Skip to content

About

Project Information

Version History

v2.0.0

  • Added "Blockly" feature: visualize computation flows by assembling blocks, supporting Sympy/Latex expression input, in-editor flow execution, automatic output formula rendering, function definition / function analysis, derivative / integral, equation(s) / inequality(ies) / triangle solving, and project save / load.
  • Blockly: added "dual-mode code preview" - the dropdown at the top of the preview panel switches between native SymPy code (self-contained, only requires SymPy - copy and run directly in any interpreter with SymPy installed) and CalculusCalculator library code (the code actually executed by the Run button), with native SymPy code shown by default.
  • Fixed LaTeX output rendering misdetection in Blockly; fixed subscript access error when sympify receives a SymPy object.
  • Fully upgraded the formula editor: backend switched to MathLive for a better experience.
  • Added a splash screen and optimized startup speed.
  • Added English support for the help documentation.

v1.6.5

This is the final version of CalculusCalculator-v1

  • Replaced the dependency latex2sympy2 with latex2sympy2_extended to ensure support for Python 3.13+.
  • Built precompiled Linux binary releases.
  • Updated requirements.txt to ensure long-term support for this version.
  • Development of CalculusCalculator-v2 will begin in August 2026. See you in the future!

v1.6.4

  • Expression cache: added a "Cache" feature (menu "File → Cache"), supporting tab management of cached expressions; three quick buttons next to the input box: visual input, open cache popup, store to cache.
  • Visual formula input: based on pyqt5-math-widget (bundled in the math_input/ directory), supports structured selection and editing of mathematical symbols.
  • Save settings: added a "Save settings (when saving)" list in the settings page, where you can check/uncheck the function list, equation list, etc., to finely control the scope of saved data.
  • Menu adjustments: "Solve triangle" moved to a sub-item of the "Solve" menu; "Transform" moved to a sub-item of the "Compute" menu.
  • Project structure optimization: added __init__.py to the core/ directory; refactored ui/i18n.py into core/settings.py.
  • Code cleanup: removed residual QActions for light/dark style switching.

v1.6.3

  • Added a "Settings" tab and moved theme style settings into the settings tab.
  • Added a "Language" setting to support the English interface.
  • Added built-in "Help documentation" providing user docs and API docs.
  • Fixed the issue where indefinite and definite integrals could not be computed.
  • Removed the bundled MathJax library from resources_rc.py, reducing the ico size.

v1.6.2 (latest GitHub release)

  • Replaced the math formula display component with QGraphicsView, greatly reducing package size.
  • Refactored the project structure for better standardization.
  • Used lazy_loader to speed up startup.
  • Fixed help documentation style errors under the dark theme.

v1.6

  • Window widgets adapt to window size.
  • Used PyQtDarkTheme-fork to implement a modern flat UI.
  • Added an "Interface theme" menu item supporting light/dark switching.
  • Provided an additional Nuitka-compiled version.

v1.6.1

  • Direct LaTeX code input: prefix an expression with $ to input LaTeX.
  • Changed the help page from QWebEngineView to QTextBrowser, improving load performance.
  • Updated help docs and README.

v1.5.2

  • Geometry computation: 32 plane and 22 solid operations.
  • Enter shortcut: the main input box supports triggering the button via Enter.
  • Added a "Compute" item to the menu bar.

v1.5.1

  • Plane geometry / solid geometry definition and plotting.

v1.5.0

  • Vectors, triangle solving, function plotting.

v1.4.4

  • Compute tab: high-precision and symbolic computation, LaTeX generation.
  • Functions called as function_name(argument_value), supporting nesting.
  • Most results automatically rationalize the denominator; inequality solution sets returned as sets/intervals.
  • Equation systems and inequality systems written to save file; fixed multi-solution errors.

v1.4.3

  • Added JSON save / load functionality.
  • Fixed lag when first creating a new tab; switched to WinRAR/7z packaging.

v1.4.2

  • Fixed the issue where algebraic expressions were auto-simplified on input but not simplified when solving.

v1.4.1

  • Refactored UI: tabs can be added/removed like a browser.
  • Added a menu bar (the "About" item contains GitHub/web version links).
  • Moved UI code into the ui directory; reduced package size.

Known Limitations

  • Under very complex symbolic expressions, SymPy computation may be slow or consume significant memory.
  • Expression parsing relies on SymPy's sympify and must basically conform to Python/SymPy syntax.
  • The web version is limited by PythonAnywhere resources and has difficulty handling very large computation tasks.

License

This project is licensed under the MIT License.

Author

LiMingkang — GitHub: limingkang12345