# Contributing to Math Notes
Live site → math.suryaraj.com · GitHub → suryakantamangaraj
/Math
Thank you for your interest in contributing! This is an open, community-driven mathematics reference built with MyST Markdown and Jupyter Book. Every contribution — however small — makes this a better resource for everyone.
Where Contributions Are Most Needed¶
The sections below are actively seeking contributors. They have an outline but need more depth, worked examples, and/or interactive Python notebooks:
| Section | What’s missing |
|---|---|
| Linear Algebra | Worked numerical examples, Python code for eigenvalue computation, matrix decompositions (LU, QR, SVD) |
| Geometry | Illustrated examples, analytic geometry problems, 3-D coordinate visualisations |
| Number Theory | Python implementations of sieve, GCD, modular exponentiation, RSA toy example |
| Arithmetic & Algebra | More NumPy examples, symbolic algebra with SymPy |
| Any section | Additional practice problems, proofs, real-world applications |
If you notice any errors, broken formulas, or missing references anywhere in the site, please fix or flag them — that counts too!
Ways to Contribute¶
1. Fix a typo or formula error¶
Click the edit button (âœï¸) at the top of any page on math.suryaraj.com to edit the source directly on GitHub.
Commit, and open a pull request.
2. Add or expand content in an existing Markdown file¶
Topics live in notes/content/. Each top-level subject maps to a file:
notes/content/
├── Arithmetic.ipynb # Arithmetic & Algebra
├── first-order.md # 1st-order ODEs
├── Geometry.md # Geometry ↠needs help
├── LinearAlgebra.md # Linear Algebra ↠needs help
├── NumberTheory.md # Number Theory ↠needs help
└── second-order/ # 2nd-order ODEs
├── analytical.ipynb
├── fourier-series.ipynb
└── ...Edit the relevant file and submit a pull request.
3. Add a new Jupyter notebook¶
Adding Python examples as notebooks (.ipynb) makes content interactive and executable on Binder/Colab.
Place your notebook under the appropriate
notes/content/subdirectory.Add it to
notes/_toc.ymlso the build picks it up.Make sure it runs top-to-bottom with
jupyter nbconvert --to notebook --execute.
4. Suggest a new topic¶
Open an issue with the label topic request and describe what you’d like to see covered.
Development Setup¶
# Clone and enter the repo
git clone https://github.com/suryakantamangaraj/Math.git
cd Math
# Create a virtual environment and install dependencies
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
# Build the book locally
cd notes
myst build --html # MyST v2 (recommended)
# OR: jupyter-book build . # legacy JupyterBook v1
# Open the result
start _build/html/index.html # Windows
open _build/html/index.html # macOS / LinuxPull Request Guidelines¶
Fork the repository and create a feature branch:
git checkout -b feat/your-topic.Keep changes focused — one topic or fix per PR is ideal.
Ensure notebooks execute without errors before submitting.
Write a short description in the PR explaining what you changed and why.
Reference any related issues with
Closes #<issue-number>.
A maintainer will review and merge your PR, usually within a few days.
Community Standards¶
Please follow the Code of Conduct in all interactions.
Recognition¶
All contributors are welcome! Significant contributions will be acknowledged in the site footer and project README.