This is an incredibly powerful calculator that is capable of many useful day-to-day functions.

Overview
Releases Contributors Stars

Description πŸ’»

This is an incredibly powerful calculator that is capable of many useful day-to-day functions. Such functions include solving basic arithmetic, algebraic, chemistry conversions, and much more.

How To Use ⚑

Step 1: Make sure you have pip installed on your OS, you can do it by writing the following command on your terminal.

pip help

Step 2: If you don't have pip installed , you can install it using the following command.

python get-pip.py
or
python3 get-pip.py

Step 3: Check the pip version using :

pip -V

Step 4: Clone the repository by using

git clone https://github.com/JordanLeich/Ultimate-Calculator.git

Step 5: Install the requirements

pip install -r requirements.txt

Step 6: Run the project using
python3 main.py

Preview πŸ’»

Preview

TODO List ❗

  • Check out the issues page for this project here

Bug Reporting 🐞

  • Check out the issues page for this project here

Calculator

Comments
  • Add bitwise operations

    Add bitwise operations

    Adds the bitwise operations to calculator.py and updates the relevant menu. I've used f-strings which you seem to be purging. The warning you're getting is because you've enabled code compatability inspection, and f-strings aren't python 2 compatable. If you want to be able to run on python 2 I'll change them to .format but I can't understand why you would, and I expect that other parts of the code aren't compatible.

    opened by PeanutbutterWarrior 1
  • Old UI files

    Old UI files

    Sorry for deleting the files , I thought , they are useless as long as the calculator is getting updated eveyday , I thought made we will create a final GUI from scratch once the project. The first one was kinda Demo.

    opened by BadrBelkadi 1
  • Graphic User Interface

    Graphic User Interface

    Hi! I have created a simple GUI for the calculator using PYQT5 , it's not 100% done , 70% of the work is done , so what is working so far is the following ( Basic Arithmetics, Algebra, Stock Market, Time Converter, Credits (Takes you to the contributors page on github), Converters (Currency Converter so far and still need some work and apparently I have to update it with currency api) ) Please take some time and check it out , you can just run the main.py cd GUI python3 main.py

    opened by BadrBelkadi 1
  • Validated User Inputs.

    Validated User Inputs.

    calculator.py

    • Validate User Inputs
    • Cleaned up the if else
    • Continue Option after an operation

    This is the first time I'm participating in open source projects. Feedbacks (even if it's negative) would be greatly appreciated! Thanks and best Regards.

    opened by bot-coder05 1
  • Created Time Conversion functionality

    Created Time Conversion functionality

    I've finished the (basic) time conversion part of this calculator. It works by converting the users input into seconds and then dividing that to get years, days, minutes, so on. Definitely has the possibility of more output options but this is what I got working until now.

    Also fixed contributions.py since starting the program was impossible because it would open the page automatically and then quit the program.

    opened by ghost 1
  • Simplify unit conversions

    Simplify unit conversions

    I've changed how unit conversions work, removing almost all of the repetition between functions. Adding new conversions and new units is now much easier, only changing a single dictionary. Instructions for doing this are at the top of conversions/conversions.py::unit_converter(). I have left the cryptocurrency alone, as I expect that this could be updated to use an api, however this can be added easily.

    opened by PeanutbutterWarrior 0
  • Restructure program to avoid recursion

    Restructure program to avoid recursion

    I've changed a lot of the menus to now restart once an operation is done, rather than calling the function repeatably. Where appropriate, operations take you back to the previous menu. I've also added an Exit exception, which is called from anywhere, winds back to the main menu, is caught and then the program is cleanly exited.

    I've also added uses of repeat_input where I could, along with allowing it to take a function argument as an additional check on the input e.g. checking a number is greater than one. The function could still be improved to automatically convert the type (float to float, yes/no to boolean etc.)

    opened by PeanutbutterWarrior 0
  • API_KEY exception handled

    API_KEY exception handled

    File ~/Ultimate-Calculator/uis/currency_ui.py", line 89, in convert
    output = float(amount * get_currency("EUR_USD"))
    TypeError: get_currency() missing 1 required positional argument: 'api_key'
    
    opened by iam-shanmukha 0
  • Bug Reporting 🐞

    Bug Reporting 🐞

    Reporting Bugs ❗

    • If you find any bugs or issues while using this project, report the bug here and we will fix it as soon as possible. Active found bugs will be listed down below and will be removed if fixed.

    Known Bugs πŸ›

    1. For developers of this project, if you run the project through any other file than main.py and you try to use the restart or quit option, you will raise an error. This error will likely be avoided since normal end-users will not see this error due to them running the project through main.py.
    2. Avoid using the GUI application while running the main.exe version since the GUI seems to be incompatible with how the main.exe file is created.
    bug 
    opened by JordanLeich 13
  • TODO List ❗

    TODO List ❗

    1. Add a GPA calculator.
    2. Add in the remaining calculators and converters that are missing from the GUI version.
    3. Add in some graphing functionality.
    4. Add any useful calculators or converters you can think of that have not already been implemented.

    Contributing ✍️

    • Here’s an easy and quick video guide for learning how to contribute via GitHub
    bug enhancement help wanted good first issue 
    opened by JordanLeich 14
Releases(v6.3)
  • v6.3(Sep 5, 2021)

    v6.3 Patch Notes πŸ”’

    1. Certain areas for outputting results now have fixed formatting and coloring
    2. Readme now has improved formatting and instructions for installation
    3. Removed winsound as a requirement since this is preinstalled for those with python and windows
    Source code(tar.gz)
    Source code(zip)
  • v6.2(Jul 7, 2021)

    v6.2 Patch Notes πŸ”’

    1. A total of 9 new calculators have been added while others have been improved
    2. User input is improved and handled better now
    3. Tons of code has been tossed due to unused or unnecessary code and simplified functions being introduced
    Source code(tar.gz)
    Source code(zip)
  • v6.1(Jun 27, 2021)

    v6.1 Patch Notes ❗

    1. An executable version of this project has been created for those with windows and who do not have python installed on their system and still want to use this project. This can be found here.
    2. New icon has been added for the executable
    3. Winsound error has been fixed for macOS and Linux users
    4. API has been greatly improved for conversions and does not require key.json anymore
    5. File conversions have been sadly removed due to module errors while compiling the pyinstaller executable
    6. Donation options have been added for those who would like to support this project

    Contributions πŸ…

    Special thanks to @PeanutbutterWarrior for all of the recent reworking, tweaks, and contributions for this past and current release!

    Source code(tar.gz)
    Source code(zip)
  • v6.0(Jun 22, 2021)

    v6.0 Patch Notes ❕

    1. API file has been greatly improved and now requires the user to validate their own key instead of just using a key priorly made by the developers
    2. Bitwise calculator and binary converter have been added
    3. Remade the arithmetic calculator to be capable of using brackets now
    4. Docstrings and comments have been added all-around to help newcomers find out what important sections of our code does
    5. Big changes to how most of the UI looks while running the program to reduce clutterness
    6. Huge improvements, tweaks, and removal of unnecessary code have been made to get rid of recursion problems
    Source code(tar.gz)
    Source code(zip)
  • v5.5(Jun 16, 2021)

    v5.5 Patch Notes ❗

    1. Lots of code has been cleaned up and optimized.
    2. Added a BMI (body mass index) calculator, video & audio converters, geometry calculator, and many reworks to how certain calculators/converters work.
    3. To help reduce clutter, all calculators, conversions, and modules have now been stored in their respective folders.
    4. User input validation has been greatly changed and improved using a separate tools.py file

    Biggest Contributor πŸ˜„

    @bot-coder05, reformatted almost every calculator and converter, helped enhance many calculators and created tools.py to improved user input validation.

    Source code(tar.gz)
    Source code(zip)
  • v5.0(Jun 12, 2021)

    v5.0 Patch Notes ❗

    1. Many brand new converters have been added to conversions.py such as speed, sound frequency, digital storage, and much more.
    2. Major changes have been made to our GUI applications such as dark mode, button shortcuts, small bug fixes, and better readability.
    3. Small tweaks and deletions of unused code have been made to all calculators and converters.
    4. GUI preview added to readme file along with other small changes.

    Biggest Contributors πŸ₯‡

    • Special thanks to BadrBelkadi & bot-coder05 for all of the incredible help, could not have gotten this far without you both! @BadrBelkadi @bot-coder05
    Source code(tar.gz)
    Source code(zip)
  • v4.0(Jun 7, 2021)

    v4.0 Patch Notes

    1. Many new calculators have been added such as finding midpoint, distance between two points, heads or tails game, random integer generator.
    2. GUI application has been completed and functions properly now.
    3. Many improvements to readability made by removing unused code and renaming ugly variables.
    4. Fixed some small errors and bugs with improved if statements and try and except statements.
    5. Small reworks to how certain calculators work along with replacing the old calculator.py file with a new and improved calculator that's allows for multiple numbers in one arithmetic problem.
    Source code(tar.gz)
    Source code(zip)
  • v3.5(Jun 4, 2021)

    v3.5 Patch Notes

    1. GUI application has been added and is still in progress.
    2. Fixed tons of spacing, formatting, and typos issues.
    3. Preview section has been added to the readme.md file.
    4. Added financial.py with a couple of useful calculators.
    5. API has been added and functions beautifully.
    6. Error handling has been greatly approved throughout multiple files.
    7. time conversions are now finished and work beautifully.
    Source code(tar.gz)
    Source code(zip)
  • v2.0(Jun 3, 2021)

    v2.0 Patch Notes

    1. Many fixes to errors and formatting thanks to contributors πŸ˜„
    2. Readme file has been greatly improved
    3. Many new functions and converters have been added and improved upon
    4. Added a requirements folder for those who want to easily install all the modules used in this project
    5. API has been added but is not yet finished, will be finished in the next major release
    Source code(tar.gz)
    Source code(zip)
  • v1.0(Jun 2, 2021)

    v1.0 Patch Notes

    1. This is considered the first major release though it not fully finished quite yet.
    2. Added algebra calculators and all chemistry calculators and conversions.
    3. Removed youtube URL converter due to GitHub and YouTube's legal policies to void a ban.
    4. Readme is about finalized currently and is likely to be left unchanged.
    Source code(tar.gz)
    Source code(zip)
Owner
Jordan Leich
Computer Science student at Macomb Community College. Seeking a Bachelor's Degree at Oakland University in Computer Science.
Jordan Leich
Jarvis is a simple Chatbot with a GUI capable of chatting and retrieving information and daily news from the internet for it's user.

J.A.R.V.I.S Kindly consider starring this repository if you like the program :-) What/Who is J.A.R.V.I.S? J.A.R.V.I.S is an chatbot written that is bu

Epicalable 50 Dec 31, 2022
ChessCoach is a neural network-based chess engine capable of natural-language commentary.

ChessCoach is a neural network-based chess engine capable of natural-language commentary.

Chris Butner 380 Dec 3, 2022
Free and Open Source Machine Translation API. 100% self-hosted, offline capable and easy to setup.

LibreTranslate Try it online! | API Docs | Community Forum Free and Open Source Machine Translation API, entirely self-hosted. Unlike other APIs, it d

null 3.4k Dec 27, 2022
Translate U is capable of translating the text present in an image from one language to the other.

Translate U is capable of translating the text present in an image from one language to the other. The app uses OCR and Google translate to identify and translate across 80+ languages.

Neelanjan Manna 1 Dec 22, 2021
Lumped-element impedance calculator and frequency-domain plotter.

fastZ: Lumped-Element Impedance Calculator fastZ is a small tool for calculating and visualizing electrical impedance in Python. Features include: Sup

Wesley Hileman 47 Nov 18, 2022
Collection of useful (to me) python scripts for interacting with napari

Napari scripts A collection of napari related tools in various state of disrepair/functionality. Browse_LIF_widget.py This module can be imported, for

null 5 Aug 15, 2022
Words_And_Phrases - Just a repo for useful words and phrases that might come handy in some scenarios. Feel free to add yours

Words_And_Phrases Just a repo for useful words and phrases that might come handy in some scenarios. Feel free to add yours Abbreviations Abbreviation

Subhadeep Mandal 1 Feb 1, 2022
Official Stanford NLP Python Library for Many Human Languages

Stanza: A Python NLP Library for Many Human Languages The Stanford NLP Group's official Python NLP library. It contains support for running various ac

Stanford NLP 6.4k Jan 2, 2023
Official Stanford NLP Python Library for Many Human Languages

Stanza: A Python NLP Library for Many Human Languages The Stanford NLP Group's official Python NLP library. It contains support for running various ac

Stanford NLP 5.2k Feb 12, 2021
Official Stanford NLP Python Library for Many Human Languages

Stanza: A Python NLP Library for Many Human Languages The Stanford NLP Group's official Python NLP library. It contains support for running various ac

Stanford NLP 5.2k Feb 17, 2021
Study German declensions (dER nettE Mann, ein nettER Mann, mit dEM nettEN Mann, ohne dEN nettEN Mann ...) Generate as many exercises as you want using the incredible power of SPACY!

Study German declensions (dER nettE Mann, ein nettER Mann, mit dEM nettEN Mann, ohne dEN nettEN Mann ...) Generate as many exercises as you want using the incredible power of SPACY!

Hans AlemΓ£o 4 Jul 20, 2022
ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.

ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.

Antlr Project 13.6k Jan 5, 2023
NLPretext packages in a unique library all the text preprocessing functions you need to ease your NLP project.

NLPretext packages in a unique library all the text preprocessing functions you need to ease your NLP project.

Artefact 114 Dec 15, 2022
Trex is a tool to match semantically similar functions based on transfer learning.

Trex is a tool to match semantically similar functions based on transfer learning.

null 62 Dec 28, 2022
Python functions for summarizing and improving voice dictation input.

Helpmespeak Help me speak uses Python functions for summarizing and improving voice dictation input. Get started with OpenAI gpt-3 OpenAI is a amazing

Margarita Humanitarian Foundation 6 Dec 17, 2022
πŸ–οΈThis is a feature-complete clone of the awesome Chalk (JavaScript) library.

Terminal string styling done right This is a feature-complete clone of the awesome Chalk (JavaScript) library. All credits go to Sindre Sorhus. Highli

Fabian Keller 132 Dec 27, 2022
A Python 3.6+ package to run .many files, where many programs written in many languages may exist in one file.

RunMany Intro | Installation | VSCode Extension | Usage | Syntax | Settings | About A tool to run many programs written in many languages from one fil

null 6 May 22, 2022
A module filled with many useful functions and modules in various subjects.

Usefulpy Check out the Usefulpy site Usefulpy site is not always up to date Download and Import download and install with with pip download usefulpyth

Austin Garcia 1 Dec 28, 2021
Incredibly fast crawler designed for OSINT.

Photon Incredibly fast crawler designed for OSINT. Photon Wiki β€’ How To Use β€’ Compatibility β€’ Photon Library β€’ Contribution β€’ Roadmap Key Features Dat

Somdev Sangwan 9.3k Jan 2, 2023