Skip to main content

Python tools for math education workflows.

Project description

edu-math

CI Python Versions Package Version License

edu-math is a Python package for math education workflows.

The PyPI distribution is osl-edu-math; the import package remains edumath.

The project is in its initial scaffold stage. The repository includes packaging, testing, linting, documentation, release automation, and GitHub workflow infrastructure adapted from the Open Science Labs Incubator Python package template used by prisma-flow.

Installation

pip install osl-edu-math

Symbolic equation solving

edumath.solvers provides SymPy-backed equation solving with structured solution steps. The math is computed locally and can be used without any API key:

from edumath.core import parse_equation
from edumath.solvers import solve_equation_steps

equation = parse_equation("2(x - 3) + 4 = 10")
solution = solve_equation_steps(equation)
print(solution.answer)
print(solution.render_text())

Optional AI tutor explanations can be enabled through edumath.settings. The AI text is added after SymPy/edumath has solved and checked the equation, so the symbolic result remains the source of truth:

from edumath.core import parse_equation
from edumath.settings import configure
from edumath.solvers import solve_equation_steps

configure(openai_api_key="YOUR_OPENAI_API_KEY")
equation = parse_equation("2(x - 3) + 4 = 10")
solution = solve_equation_steps(equation, explain=True)
print(solution.explanation)

Development

conda env create -f conda/dev.yaml
conda activate edumath
poetry config virtualenvs.create false
poetry install --extras "dev"

Run checks through Makim:

makim tests.linter
makim tests.unit
makim package.build
makim docs.build

Project layout

  • src/edumath/: Python package source
  • tests/: pytest test suite
  • docs/: Quarto documentation website
  • conda/: development and release environment files
  • .github/: issue templates and GitHub Actions workflows

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

osl_edu_math-0.4.0.tar.gz (67.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

osl_edu_math-0.4.0-py3-none-any.whl (105.8 kB view details)

Uploaded Python 3

File details

Details for the file osl_edu_math-0.4.0.tar.gz.

File metadata

  • Download URL: osl_edu_math-0.4.0.tar.gz
  • Upload date:
  • Size: 67.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.13.14 Linux/6.17.0-1018-azure

File hashes

Hashes for osl_edu_math-0.4.0.tar.gz
Algorithm Hash digest
SHA256 e2054304d5c19039ef555a74cdbd6f79433d540ac708dfd0344d3efbb3176212
MD5 cc65fa096d37e38da17ae15b65acd85e
BLAKE2b-256 f07c08f248e04b41359a939ba1941cc21b373416348d39c930a416431b0f65a6

See more details on using hashes here.

File details

Details for the file osl_edu_math-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: osl_edu_math-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 105.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.1 CPython/3.13.14 Linux/6.17.0-1018-azure

File hashes

Hashes for osl_edu_math-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f9a2e361d24a3ac5c50a5f2b9364932740acacf19f680392e6a78263791a7bbe
MD5 e5ddd54328c2b3e9ea31e92c37f96f90
BLAKE2b-256 4225f93201767e54602995be6cee161a28b3131236d3c6c6c472943f537e8461

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page