A modern Python calculator with GUI for executing scripts, plotting graphs, and data analysis.
This project is a vibe code experiment and is created for educational purposes.
Please do not use the solutions, architectural approaches, and patterns implemented in this project as a reference for your own projects. The code may contain suboptimal solutions, simplifications, and experimental approaches that are not suitable for production use.
- Two-panel interface: Python code editor on the left, output area on the right
- Graph support: automatic display of matplotlib graphs
- Markdown support: output results in Markdown format
- Save and load: file manager for working with Python scripts
- Modern UI: beautiful interface based on CustomTkinter
- Code autocompletion: intelligent suggestions using Jedi
- Python 3.8 or higher
- pip for installing dependencies
pip install -r requirements.txtcustomtkinter>=5.2.0- modern GUI frameworkmatplotlib>=3.7.0- plotting graphsnumpy>=1.24.0- numerical computingjedi>=0.19.0- code autocompletionmarkdown>=3.4.0- Markdown supporttkhtmlview>=0.3.0- HTML display in Tkinterbeautifulsoup4>=4.11.0- HTML parsing
python src/main.pyThe application is already compiled and located in the src/dist/ folder:
src/dist/PyCalculator.exe
src/
βββ main.py # Application entry point
βββ app.py # Main application
βββ components/ # UI components
β βββ python_editor.py # Python code editor
β βββ output.py # Output area
β βββ file_panel.py # File management panel
β βββ toolbar.py # Toolbar
βββ utils/ # Utilities
β βββ code_executor.py # Code execution
β βββ data_manager.py # Data management
βββ data/ # Example data and scripts
βββ tests/ # Tests
βββ build/ # PyInstaller build files
βββ dist/ # Compiled application
- Code editing: Enter or load Python code in the left panel
- Execution: Press the "Run" button or use keyboard shortcuts
- Viewing results: Execution results are displayed in the right panel
- Graphs: Matplotlib graphs are automatically displayed in the interface
- Saving: Use save buttons for file operations
To create an executable file, use the build script:
./src/build_exe.ps1