# RealMaths ๐งฎ
**Natural mathematical expressions for everyone!**
RealMaths lets you write mathematical expressions the way you think about them, without needing to know programming syntax. Perfect for students, teachers, researchers, and anyone who wants to do math without learning to code.
[](https://python.org)
[](LICENSE)
[](https://github.com/yourusername/easymath)
## โจ Features
- **๐ฏ Natural notation**: Write `4n + 1` instead of `4*n + 1`
- **๐ซ No coding required**: Perfect for non-programmers
- **๐ง Built-in functions**: SIN, COS, SQRT, LOG, and more (UPPERCASE)
- **๐พ Reusable formulas**: Define once, use many times
- **โ Helpful errors**: Clear messages when something goes wrong
- **๐ Comprehensive**: Works for basic math through advanced calculations
- **๐ Safe**: Secure evaluation of mathematical expressions
- **๐จ Clear distinction**: UPPERCASE for functions/constants, lowercase for variables
## ๐ Quick Start
### Installation
```bash
pip install realmaths
```
or for uv
```bash
uv pip install realmaths
```
### Basic Usage
```python
from realmaths import EasyMath
calc = EasyMath()
# Simple calculations
result = calc.eval("4n + 1", n=5) # Returns 21
print(result)
# Use mathematical functions (UPPERCASE)
area = calc.eval("PI * r^2", r=3) # Circle area
print(f"Circle area: {area:.2f}")
# Define your own formulas
calc.define("compound_interest", "P(1 + r)^t")
money = calc.calculate("compound_interest", P=1000, r=0.05, t=10)
print(f"Investment value: ${money:.2f}")
```
### Even Quicker
```python
from realmaths import calculate
# One-line calculations
result = calculate("2x^2 + 3x - 1", x=4) # Returns 43
distance = calculate("SQRT((x2-x1)^2 + (y2-y1)^2)", x1=0, y1=0, x2=3, y2=4) # Returns 5.0
```
## ๐ Examples
### Basic Mathematics
```python
calc = EasyMath()
# Arithmetic with variables
calc.eval("2x + 3", x=5) # 13
calc.eval("x^2 + 2x + 1", x=3) # 16
# Using constants and functions (UPPERCASE)
calc.eval("PI * r^2", r=5) # ~78.54
calc.eval("SIN(PI/2)") # 1.0
calc.eval("SQRT(x^2 + y^2)", x=3, y=4) # 5.0
calc.eval("EXP(x)", x=2) # ~7.39
```
### Science & Engineering
```python
# Physics: kinetic energy
calc.define("kinetic_energy", "0.5 * m * v^2")
energy = calc.calculate("kinetic_energy", m=10, v=25) # 3125 J
# Chemistry: ideal gas law
calc.define("ideal_gas", "n * R * T / P") # V = nRT/P
volume = calc.calculate("ideal_gas", n=2, R=8.314, T=298, P=101325)
# Engineering: stress calculation
calc.define("stress", "F / A")
stress = calc.calculate("stress", F=1000, A=0.01) # 100,000 Pa
```
### Finance
```python
# Compound interest
calc.define("compound", "P * (1 + r/n)^(n*t)")
amount = calc.calculate("compound", P=1000, r=0.05, n=12, t=5)
# Loan payments
calc.define("payment", "P * (r*(1+r)^n) / ((1+r)^n - 1)")
monthly = calc.calculate("payment", P=200000, r=0.04/12, n=30*12)
# Investment growth
calc.define("cagr", "((FV/PV)^(1/n)) - 1")
growth = calc.calculate("cagr", FV=1500, PV=1000, n=5)
# advance compound interest
calc.define("compound", "p(1+r/n)^(nt)")
for i in range(1,12):
amount = calc.calculate("compound", p=1000, r=0.05, n=12, t=i)
print(f"Investment vale: {amount:.2f} at year: {i}")
```
### Education
```python
# Quadratic formula solver
from realmaths import solve_quadratic
x1, x2 = solve_quadratic(1, -5, 6) # Solves xยฒ - 5x + 6 = 0
print(f"Solutions: xโ={x1}, xโ={x2}") # Solutions: xโ=3.0, xโ=2.0
# Distance formula
calc.define("distance", "SQRT((x2-x1)^2 + (y2-y1)^2)")
dist = calc.calculate("distance", x1=0, y1=0, x2=3, y2=4) # 5.0
# Trigonometry
calc.eval("SIN(30 * PI/180)") # sin(30ยฐ) = 0.5
calc.eval("COS(PI/3)") # cos(60ยฐ) = 0.5
```
## ๐ฏ Perfect For
- **๐จโ๐ Students**: Write math naturally without syntax errors
- **๐ฉโ๐ซ Teachers**: Create interactive examples and problem solvers
- **๐ฌ Researchers**: Quick calculations without complex setup
- **๐ Analysts**: Financial and statistical calculations
- **๐๏ธ Engineers**: Formula-based calculations
- **๐ก Anyone**: Who wants to do math without learning programming
## ๐ Documentation
### Capitalization Convention
RealMaths uses a clear capitalization system to distinguish between functions/constants and variables:
- **UPPERCASE**: Functions and constants (`SIN`, `COS`, `PI`, `E`, `SQRT`)
- **lowercase**: Variables (`x`, `y`, `a`, `b`, `c`)
This prevents ambiguity and makes expressions clear:
```python
# Functions and constants (UPPERCASE)
calc.eval("SIN(PI/2)") # Function call
calc.eval("2PI") # Constant (2 * ฯ)
# Variables (lowercase)
calc.eval("ax^2 + bx + c", a=1, b=2, c=3, x=2) # Variables
```
### Supported Operations
| Operation | Syntax | Example |
|-----------|--------|---------|
| Addition | `+` | `x + y` |
| Subtraction | `-` | `x - y` |
| Multiplication | `*` or implicit | `2*x` or `2x` |
| Division | `/` | `x / y` |
| Exponentiation | `^` or `**` | `x^2` or `x**2` |
| Square/Cube | `ยฒ` `ยณ` | `xยฒ` or `xยณ` |
### Built-in Functions (UPPERCASE)
| Category | Functions |
|----------|-----------|
| **Trigonometric** | `SIN`, `COS`, `TAN`, `ASIN`, `ACOS`, `ATAN` |
| **Hyperbolic** | `SINH`, `COSH`, `TANH` |
| **Logarithmic** | `LOG`, `LN`, `LOG10`, `LOG2` |
| **Exponential** | `EXP`, `EXP2` |
| **Power/Root** | `SQRT`, `CBRT`, `POW` |
| **Rounding** | `ABS`, `ROUND`, `FLOOR`, `CEIL` |
| **Comparison** | `MIN`, `MAX` |
### Constants (UPPERCASE)
| Constant | Value | Description |
|----------|-------|-------------|
| `ฯ`, `PI` | 3.14159... | Pi |
| `E` | 2.71828... | Euler's number |
| `TAU` | 6.28318... | Tau (2ฯ) |
| `INF` | โ | Infinity |
### Function Management
```python
# Define a reusable function
calc.define("function_name", "mathematical_expression", "optional description")
# Use the function
result = calc.calculate("function_name", variable1=value1, variable2=value2)
# Manage functions
calc.list_functions() # Show all defined functions
calc.delete_function("function_name") # Delete a function
calc.get_function_info("function_name") # Get function details
```
### Getting Help
```python
calc.help() # Show comprehensive help
calc.list_functions() # Show your defined functions
# Quick help
from realmath import quick_help
quick_help()
```
## ๐ง Advanced Features
### Error Handling
RealMaths provides helpful error messages:
```python
# Missing variable
calc.eval("x + y", x=1) # VariableError: Missing variables: y
# Invalid syntax
calc.eval("2x +") # ExpressionError: Invalid expression syntax
# Mathematical errors
calc.eval("1/0") # MathematicalError: Division by zero
```
### Safe Mode
By default, RealMaths runs in safe mode to prevent code injection:
```python
calc = EasyMath(safe_mode=True) # Default: safe evaluation
calc = EasyMath(safe_mode=False) # Allow more Python features
```
### Validation
```python
from realmath import is_valid_expression, get_expression_variables
# Check if expression is valid
if is_valid_expression("2x + 3"):
print("Valid expression!")
# Get variables in expression
vars_list = get_expression_variables("ax^2 + bx + c")
print(vars_list) # ['a', 'b', 'c', 'x']
```
## ๐งช Examples by Domain
### Physics
```python
calc.define("kinetic_energy", "0.5 * m * v^2")
calc.define("potential_energy", "m * g * h")
calc.define("wave_speed", "f * ฮป")
calc.define("ohms_law", "V / R")
```
### Chemistry
```python
calc.define("ideal_gas", "n * R * T / P")
calc.define("ph_calculation", "-log10(H_concentration)")
calc.define("molarity", "moles / volume_L")
```
### Finance
```python
calc.define("compound_interest", "P * (1 + r/n)^(n*t)")
calc.define("present_value", "FV / (1 + r)^n")
calc.define("loan_payment", "P * (r*(1+r)^n) / ((1+r)^n - 1)")
```
### Statistics
```python
calc.define("mean", "sum_values / n")
calc.define("variance", "sum_squared_deviations / (n-1)")
calc.define("standard_deviation", "sqrt(variance)")
calc.define("z_score", "(x - ฮผ) / ฯ")
```
### Geometry
```python
calc.define("circle_area", "ฯ * r^2")
calc.define("sphere_volume", "(4/3) * ฯ * r^3")
calc.define("triangle_area", "0.5 * base * height")
calc.define("distance_2d", "sqrt((x2-x1)^2 + (y2-y1)^2)")
```
## ๐ ๏ธ Development
### Running Tests
```bash
pip install pytest
pytest tests/
```
### Development Installation
```bash
git clone https://github.com/yourusername/easymath.git
cd easymath
pip install -e .
```
### Running Examples
```bash
python -m easymath.examples
```
## ๐ค Contributing
We welcome contributions! RealMaths is designed to make math accessible to everyone.
1. Fork the repository
2. Create a feature branch
3. Add tests for new features
4. Submit a pull request
See `CONTRIBUTING.md` for detailed guidelines.
## ๐ Requirements
- Python 3.7+
- No external dependencies (uses only Python standard library)
## ๐ License
MIT License - feel free to use in your projects, educational materials, and research.
## ๐ Acknowledgments
- Inspired by the need to make mathematics accessible to non-programmers
- Built for educators, students, and researchers worldwide
- Special thanks to the Python mathematics community
## ๐ Support
- ๐ [Documentation](https://github.com/yourusername/easymath#readme)
- ๐ [Issue Tracker](https://github.com/yourusername/easymath/issues)
- ๐ฌ [Discussions](https://github.com/yourusername/easymath/discussions)
- ๐ง Email: your.email@example.com
---
**Made with โค๏ธ for the math community**
*RealMaths: Because mathematics should be about the math, not the syntax.*
Raw data
{
"_id": null,
"home_page": "https://github.com/conorzen/realmaths",
"name": "realmaths",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "Your Name <your.email@example.com>",
"keywords": "mathematics, calculator, expressions, education, natural-language, non-programmer, math-notation, student-friendly",
"author": "Conor Reid",
"author_email": "Your Name <your.email@example.com>",
"download_url": "https://files.pythonhosted.org/packages/53/fd/decbe3ea792e8b58a59fdf4bbc4dc6b6f3d0e5116f4187561ed288f956af/realmaths-1.0.3.tar.gz",
"platform": null,
"description": "# RealMaths \ud83e\uddee\n\n**Natural mathematical expressions for everyone!**\n\nRealMaths lets you write mathematical expressions the way you think about them, without needing to know programming syntax. Perfect for students, teachers, researchers, and anyone who wants to do math without learning to code.\n\n[](https://python.org)\n[](LICENSE)\n[](https://github.com/yourusername/easymath)\n\n## \u2728 Features\n\n- **\ud83c\udfaf Natural notation**: Write `4n + 1` instead of `4*n + 1`\n- **\ud83d\udeab No coding required**: Perfect for non-programmers\n- **\ud83d\udd27 Built-in functions**: SIN, COS, SQRT, LOG, and more (UPPERCASE)\n- **\ud83d\udcbe Reusable formulas**: Define once, use many times\n- **\u2757 Helpful errors**: Clear messages when something goes wrong\n- **\ud83d\udcda Comprehensive**: Works for basic math through advanced calculations\n- **\ud83d\udd12 Safe**: Secure evaluation of mathematical expressions\n- **\ud83c\udfa8 Clear distinction**: UPPERCASE for functions/constants, lowercase for variables\n\n## \ud83d\ude80 Quick Start\n\n### Installation\n\n```bash\npip install realmaths\n```\nor for uv\n\n```bash\nuv pip install realmaths\n```\n### Basic Usage\n\n```python\nfrom realmaths import EasyMath\n\ncalc = EasyMath()\n\n# Simple calculations\nresult = calc.eval(\"4n + 1\", n=5) # Returns 21\nprint(result)\n\n# Use mathematical functions (UPPERCASE)\narea = calc.eval(\"PI * r^2\", r=3) # Circle area\nprint(f\"Circle area: {area:.2f}\")\n\n# Define your own formulas\ncalc.define(\"compound_interest\", \"P(1 + r)^t\")\nmoney = calc.calculate(\"compound_interest\", P=1000, r=0.05, t=10)\nprint(f\"Investment value: ${money:.2f}\")\n```\n\n### Even Quicker\n\n```python\nfrom realmaths import calculate\n\n# One-line calculations\nresult = calculate(\"2x^2 + 3x - 1\", x=4) # Returns 43\ndistance = calculate(\"SQRT((x2-x1)^2 + (y2-y1)^2)\", x1=0, y1=0, x2=3, y2=4) # Returns 5.0\n```\n\n## \ud83d\udcda Examples\n\n### Basic Mathematics\n```python\ncalc = EasyMath()\n\n# Arithmetic with variables\ncalc.eval(\"2x + 3\", x=5) # 13\ncalc.eval(\"x^2 + 2x + 1\", x=3) # 16\n\n# Using constants and functions (UPPERCASE)\ncalc.eval(\"PI * r^2\", r=5) # ~78.54\ncalc.eval(\"SIN(PI/2)\") # 1.0\ncalc.eval(\"SQRT(x^2 + y^2)\", x=3, y=4) # 5.0\ncalc.eval(\"EXP(x)\", x=2) # ~7.39\n```\n\n### Science & Engineering\n```python\n# Physics: kinetic energy\ncalc.define(\"kinetic_energy\", \"0.5 * m * v^2\")\nenergy = calc.calculate(\"kinetic_energy\", m=10, v=25) # 3125 J\n\n# Chemistry: ideal gas law\ncalc.define(\"ideal_gas\", \"n * R * T / P\") # V = nRT/P\nvolume = calc.calculate(\"ideal_gas\", n=2, R=8.314, T=298, P=101325)\n\n# Engineering: stress calculation\ncalc.define(\"stress\", \"F / A\")\nstress = calc.calculate(\"stress\", F=1000, A=0.01) # 100,000 Pa\n```\n\n### Finance\n```python\n# Compound interest\ncalc.define(\"compound\", \"P * (1 + r/n)^(n*t)\")\namount = calc.calculate(\"compound\", P=1000, r=0.05, n=12, t=5)\n\n# Loan payments\ncalc.define(\"payment\", \"P * (r*(1+r)^n) / ((1+r)^n - 1)\")\nmonthly = calc.calculate(\"payment\", P=200000, r=0.04/12, n=30*12)\n\n# Investment growth\ncalc.define(\"cagr\", \"((FV/PV)^(1/n)) - 1\")\ngrowth = calc.calculate(\"cagr\", FV=1500, PV=1000, n=5)\n\n# advance compound interest\ncalc.define(\"compound\", \"p(1+r/n)^(nt)\")\n\nfor i in range(1,12):\n amount = calc.calculate(\"compound\", p=1000, r=0.05, n=12, t=i)\n print(f\"Investment vale: {amount:.2f} at year: {i}\")\n```\n\n### Education\n```python\n# Quadratic formula solver\nfrom realmaths import solve_quadratic\nx1, x2 = solve_quadratic(1, -5, 6) # Solves x\u00b2 - 5x + 6 = 0\nprint(f\"Solutions: x\u2081={x1}, x\u2082={x2}\") # Solutions: x\u2081=3.0, x\u2082=2.0\n\n# Distance formula\ncalc.define(\"distance\", \"SQRT((x2-x1)^2 + (y2-y1)^2)\")\ndist = calc.calculate(\"distance\", x1=0, y1=0, x2=3, y2=4) # 5.0\n\n# Trigonometry\ncalc.eval(\"SIN(30 * PI/180)\") # sin(30\u00b0) = 0.5\ncalc.eval(\"COS(PI/3)\") # cos(60\u00b0) = 0.5\n```\n\n## \ud83c\udfaf Perfect For\n\n- **\ud83d\udc68\u200d\ud83c\udf93 Students**: Write math naturally without syntax errors\n- **\ud83d\udc69\u200d\ud83c\udfeb Teachers**: Create interactive examples and problem solvers\n- **\ud83d\udd2c Researchers**: Quick calculations without complex setup\n- **\ud83d\udcca Analysts**: Financial and statistical calculations\n- **\ud83c\udfd7\ufe0f Engineers**: Formula-based calculations\n- **\ud83d\udca1 Anyone**: Who wants to do math without learning programming\n\n## \ud83d\udcd6 Documentation\n\n### Capitalization Convention\n\nRealMaths uses a clear capitalization system to distinguish between functions/constants and variables:\n\n- **UPPERCASE**: Functions and constants (`SIN`, `COS`, `PI`, `E`, `SQRT`)\n- **lowercase**: Variables (`x`, `y`, `a`, `b`, `c`)\n\nThis prevents ambiguity and makes expressions clear:\n```python\n# Functions and constants (UPPERCASE)\ncalc.eval(\"SIN(PI/2)\") # Function call\ncalc.eval(\"2PI\") # Constant (2 * \u03c0)\n\n# Variables (lowercase)\ncalc.eval(\"ax^2 + bx + c\", a=1, b=2, c=3, x=2) # Variables\n```\n\n### Supported Operations\n| Operation | Syntax | Example |\n|-----------|--------|---------|\n| Addition | `+` | `x + y` |\n| Subtraction | `-` | `x - y` |\n| Multiplication | `*` or implicit | `2*x` or `2x` |\n| Division | `/` | `x / y` |\n| Exponentiation | `^` or `**` | `x^2` or `x**2` |\n| Square/Cube | `\u00b2` `\u00b3` | `x\u00b2` or `x\u00b3` |\n\n### Built-in Functions (UPPERCASE)\n| Category | Functions |\n|----------|-----------|\n| **Trigonometric** | `SIN`, `COS`, `TAN`, `ASIN`, `ACOS`, `ATAN` |\n| **Hyperbolic** | `SINH`, `COSH`, `TANH` |\n| **Logarithmic** | `LOG`, `LN`, `LOG10`, `LOG2` |\n| **Exponential** | `EXP`, `EXP2` |\n| **Power/Root** | `SQRT`, `CBRT`, `POW` |\n| **Rounding** | `ABS`, `ROUND`, `FLOOR`, `CEIL` |\n| **Comparison** | `MIN`, `MAX` |\n\n### Constants (UPPERCASE)\n| Constant | Value | Description |\n|----------|-------|-------------|\n| `\u03c0`, `PI` | 3.14159... | Pi |\n| `E` | 2.71828... | Euler's number |\n| `TAU` | 6.28318... | Tau (2\u03c0) |\n| `INF` | \u221e | Infinity |\n\n### Function Management\n```python\n# Define a reusable function\ncalc.define(\"function_name\", \"mathematical_expression\", \"optional description\")\n\n# Use the function\nresult = calc.calculate(\"function_name\", variable1=value1, variable2=value2)\n\n# Manage functions\ncalc.list_functions() # Show all defined functions\ncalc.delete_function(\"function_name\") # Delete a function\ncalc.get_function_info(\"function_name\") # Get function details\n```\n\n### Getting Help\n```python\ncalc.help() # Show comprehensive help\ncalc.list_functions() # Show your defined functions\n\n# Quick help\nfrom realmath import quick_help\nquick_help()\n```\n\n## \ud83d\udd27 Advanced Features\n\n### Error Handling\nRealMaths provides helpful error messages:\n\n```python\n# Missing variable\ncalc.eval(\"x + y\", x=1) # VariableError: Missing variables: y\n\n# Invalid syntax \ncalc.eval(\"2x +\") # ExpressionError: Invalid expression syntax\n\n# Mathematical errors\ncalc.eval(\"1/0\") # MathematicalError: Division by zero\n```\n\n### Safe Mode\nBy default, RealMaths runs in safe mode to prevent code injection:\n\n```python\ncalc = EasyMath(safe_mode=True) # Default: safe evaluation\ncalc = EasyMath(safe_mode=False) # Allow more Python features\n```\n\n### Validation\n```python\nfrom realmath import is_valid_expression, get_expression_variables\n\n# Check if expression is valid\nif is_valid_expression(\"2x + 3\"):\n print(\"Valid expression!\")\n\n# Get variables in expression\nvars_list = get_expression_variables(\"ax^2 + bx + c\")\nprint(vars_list) # ['a', 'b', 'c', 'x']\n```\n\n## \ud83e\uddea Examples by Domain\n\n### Physics\n```python\ncalc.define(\"kinetic_energy\", \"0.5 * m * v^2\")\ncalc.define(\"potential_energy\", \"m * g * h\") \ncalc.define(\"wave_speed\", \"f * \u03bb\")\ncalc.define(\"ohms_law\", \"V / R\")\n```\n\n### Chemistry \n```python\ncalc.define(\"ideal_gas\", \"n * R * T / P\")\ncalc.define(\"ph_calculation\", \"-log10(H_concentration)\")\ncalc.define(\"molarity\", \"moles / volume_L\")\n```\n\n### Finance\n```python\ncalc.define(\"compound_interest\", \"P * (1 + r/n)^(n*t)\")\ncalc.define(\"present_value\", \"FV / (1 + r)^n\")\ncalc.define(\"loan_payment\", \"P * (r*(1+r)^n) / ((1+r)^n - 1)\")\n```\n\n### Statistics\n```python\ncalc.define(\"mean\", \"sum_values / n\")\ncalc.define(\"variance\", \"sum_squared_deviations / (n-1)\")\ncalc.define(\"standard_deviation\", \"sqrt(variance)\")\ncalc.define(\"z_score\", \"(x - \u03bc) / \u03c3\")\n```\n\n### Geometry\n```python\ncalc.define(\"circle_area\", \"\u03c0 * r^2\")\ncalc.define(\"sphere_volume\", \"(4/3) * \u03c0 * r^3\") \ncalc.define(\"triangle_area\", \"0.5 * base * height\")\ncalc.define(\"distance_2d\", \"sqrt((x2-x1)^2 + (y2-y1)^2)\")\n```\n\n## \ud83d\udee0\ufe0f Development\n\n### Running Tests\n```bash\npip install pytest\npytest tests/\n```\n\n### Development Installation\n```bash\ngit clone https://github.com/yourusername/easymath.git\ncd easymath\npip install -e .\n```\n\n### Running Examples\n```bash\npython -m easymath.examples\n```\n\n## \ud83e\udd1d Contributing\n\nWe welcome contributions! RealMaths is designed to make math accessible to everyone.\n\n1. Fork the repository\n2. Create a feature branch\n3. Add tests for new features\n4. Submit a pull request\n\nSee `CONTRIBUTING.md` for detailed guidelines.\n\n## \ud83d\udccb Requirements\n\n- Python 3.7+\n- No external dependencies (uses only Python standard library)\n\n## \ud83d\udcc4 License\n\nMIT License - feel free to use in your projects, educational materials, and research.\n\n## \ud83d\ude4f Acknowledgments\n\n- Inspired by the need to make mathematics accessible to non-programmers\n- Built for educators, students, and researchers worldwide\n- Special thanks to the Python mathematics community\n\n## \ud83d\udcde Support\n\n- \ud83d\udcda [Documentation](https://github.com/yourusername/easymath#readme)\n- \ud83d\udc1b [Issue Tracker](https://github.com/yourusername/easymath/issues)\n- \ud83d\udcac [Discussions](https://github.com/yourusername/easymath/discussions)\n- \ud83d\udce7 Email: your.email@example.com\n\n---\n\n**Made with \u2764\ufe0f for the math community**\n\n*RealMaths: Because mathematics should be about the math, not the syntax.*\n",
"bugtrack_url": null,
"license": null,
"summary": "Natural mathematical expressions for non-programmers",
"version": "1.0.3",
"project_urls": {
"Bug Tracker": "https://github.com/conorzen/realmaths/issues",
"Changelog": "https://github.com/conorzen/realmaths/blob/main/CHANGELOG.md",
"Documentation": "https://github.com/conorzen/realmaths#readme",
"Homepage": "https://github.com/conorzen/realmaths",
"Repository": "https://github.com/conorzen/realmaths.git",
"Source Code": "https://github.com/conorzen/realmaths"
},
"split_keywords": [
"mathematics",
" calculator",
" expressions",
" education",
" natural-language",
" non-programmer",
" math-notation",
" student-friendly"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "a90def5e1fbce403e7117049b25a0783321f35a441a674aa64b973132d3cb654",
"md5": "e56014ff3544621981c70e48eceadfb2",
"sha256": "9e3c88020d4aeb3c6bdbe0721ead858c735166edc25c8053dc5bd75e0bdc3291"
},
"downloads": -1,
"filename": "realmaths-1.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e56014ff3544621981c70e48eceadfb2",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 23746,
"upload_time": "2025-07-27T16:24:07",
"upload_time_iso_8601": "2025-07-27T16:24:07.520278Z",
"url": "https://files.pythonhosted.org/packages/a9/0d/ef5e1fbce403e7117049b25a0783321f35a441a674aa64b973132d3cb654/realmaths-1.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "53fddecbe3ea792e8b58a59fdf4bbc4dc6b6f3d0e5116f4187561ed288f956af",
"md5": "88ffcebc7be0da82e7fe37b85ff4651c",
"sha256": "b06c9d7c4da86ab67408c879397f65eb4630a159c867f1b7a386d3c1d211ac1f"
},
"downloads": -1,
"filename": "realmaths-1.0.3.tar.gz",
"has_sig": false,
"md5_digest": "88ffcebc7be0da82e7fe37b85ff4651c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 31309,
"upload_time": "2025-07-27T16:24:08",
"upload_time_iso_8601": "2025-07-27T16:24:08.806480Z",
"url": "https://files.pythonhosted.org/packages/53/fd/decbe3ea792e8b58a59fdf4bbc4dc6b6f3d0e5116f4187561ed288f956af/realmaths-1.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-27 16:24:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "conorzen",
"github_project": "realmaths",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "realmaths"
}