๐ Project Overview
Java Basic Math Tools is a comprehensive, all-in-one mathematical and utility suite built with Java Swing. This application features 15 powerful tools wrapped in a professional, high-contrast dark theme with vibrant red accents. The project was developed in 2026 by Molla Samser and designed by Rima Khatun.
๐จ Professional UI: Dark theme with red accents inspired by rskworld.in
โก Performance: Optimized UI engine for lag-free interaction
๐ ๏ธ 15 Tools: Complete mathematical toolkit
โจ๏ธ Shortcuts: Keyboard navigation support
๐ History: Track all calculations
๐ Cross-Platform: Java-based, runs anywhere
๐ Quick Start Guide
Prerequisites
- Java JDK 8 or higher installed
- Windows/Linux/macOS operating system
Installation & Running
Step 1: Compile the Application
javac -d bin src/main/java/com/rskworld/mathtools/*.java src/main/java/com/rskworld/mathtools/panels/*.java src/main/java/com/rskworld/mathtools/utils/*.java
Step 2: Run the Application
java -cp bin com.rskworld.mathtools.Main
๐ก Pro Tip:
You can create a batch file (.bat on Windows, .sh on Linux/Mac) with the run command for easy launching.
โจ๏ธ Keyboard Shortcuts
F1 - F12
Direct access to the first 12 tools
F13
GST Calculator
F14
Function Plotter
F15
History Panel
๐ Detailed Usage Examples
Calculator Tool
Basic Operations:
1. Enter first number (e.g., 15)
2. Click operator (+, -, ร, รท)
3. Enter second number (e.g., 27)
4. Click "=" to get result (42)
Scientific functions: โ (square root), xยฒ (square), ยฑ (negate)
Statistics Tool
Data Input:
Enter numbers separated by commas or spaces: 10, 20, 30, 40, 50
Click "Calculate Statistics" to get:
- Count: 5
- Mean: 30.00
- Median: 30.00
- Variance: 200.00
- Standard Deviation: 14.14
Geometry Tool
Shape Calculations:
1. Select shape from dropdown (Circle, Rectangle, Square, etc.)
2. Enter required dimensions
3. Click "Calculate Area/Volume"
Example: Circle with radius 5 โ Area: 78.54, Circumference: 31.42
History Feature
Calculation Tracking:
All calculations are automatically saved to history
Access the History tab to view all previous calculations
Use "Refresh" to update the list, "Clear History" to reset
๐๏ธ Technical Architecture
Project Structure
java-math-tools/
โโโ src/main/java/com/rskworld/mathtools/
โ โโโ Main.java # Application entry point
โ โโโ MathToolsFrame.java # Main GUI frame with tabbed interface
โ โโโ panels/ # Individual tool panels
โ โ โโโ CalculatorPanel.java
โ โ โโโ UnitConverterPanel.java
โ โ โโโ NumberSystemPanel.java
โ โ โโโ EquationSolverPanel.java
โ โ โโโ StatisticsPanel.java
โ โ โโโ FinancialPanel.java
โ โ โโโ GeometryPanel.java
โ โ โโโ MatrixPanel.java
โ โ โโโ PrimePanel.java
โ โ โโโ BMIPanel.java
โ โ โโโ PasswordPanel.java
โ โ โโโ AgeCalculatorPanel.java
โ โ โโโ GSTPanel.java
โ โ โโโ PlotterPanel.java
โ โ โโโ HistoryPanel.java
โ โโโ utils/ # Utility classes
โ โโโ ThemeManager.java # UI theming and styling
โ โโโ HistoryManager.java # Calculation history management
โโโ bin/ # Compiled class files
โโโ README.md # Project documentation
โโโ LICENSE # MIT License
โโโ index.html # This documentation file
Key Classes
- Main.java: Entry point, initializes theme and creates main frame
- MathToolsFrame.java: Main application window with tabbed pane
- ThemeManager.java: Handles dark theme with red accents
- HistoryManager.java: Singleton for managing calculation history
- [Tool]Panel.java: Individual tool implementations
Dependencies
- Java SE 8+
- Java Swing (built-in)
- AWT (built-in)
๐จ UI Theme Details
// Theme Color Scheme
Background: RGB(20, 20, 20) // Deep charcoal
Panel BG: RGB(30, 30, 30) // Dark gray
Accent Red: RGB(255, 50, 50) // Bright red
Text: RGB(255, 255, 255) // Pure white
Input BG: RGB(45, 45, 45) // Medium gray
Button BG: RGB(60, 60, 60) // Light gray
Features:
- Professional dark mode for eye comfort
- Vibrant red accents inspired by rskworld.in
- Consistent styling across all components
- High contrast for accessibility
๐ง Development Notes
Building from Source
# Create bin directory
mkdir bin
# Compile all Java files
javac -d bin -cp src src/main/java/com/rskworld/mathtools/*.java src/main/java/com/rskworld/mathtools/panels/*.java src/main/java/com/rskworld/mathtools/utils/*.java
# Run the application
java -cp bin com.rskworld.mathtools.Main
Code Quality
- Modular design with separate panels for each tool
- Consistent error handling with user-friendly messages
- Memory-efficient history management (max 100 entries)
- Thread-safe UI operations using SwingUtilities
๐จโ๐ป Credits & License
๐ Developer
Molla Samser
Java Developer & Software Engineer
๐จ Designer & Tester
Rima Khatun
UI/UX Designer & Quality Assurance
๐ Website
rskworld.in
Project Homepage & Portfolio
๐ License
MIT License
Copyright (c) 2026 Molla Samser (rskworld.in)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Year: 2026
Version: 1.0.0
Platform: Cross-platform (Java)