A modern mathematics textbook — clear, interesting, detailed.
Content repository for textbook in english.
🌐 Site ✍🏻 Contribute 💎 Sponsor
▨
If you want to make serious contributions to project like rewriting whole sections or even creating new topics, it is best for you to setup the project on your computer. To do so:
-
Install Node.js
-
Install Bun
-
Fork the Open Math GitHub repository
-
Prepare a folder on your PC and copy your forked repository in it using GitHub Desktop app or directly.
For example, while inside the target folder, this can be done via terminal command:git clone https://github.com/__USERNAME__/en.omath.net.git ./
-
Install dependencies:
bun install
-
Build the project (slow process, up to few minutes):
bun run build
You are ready to make any contributions now!
All textbook content lies in content folder.
To see your changes live in action, launch the project:
bun launchAfter that you can see the local project site on adress: http://localhost:3000
Alternatively, you can use bun run dev command to launch the project in development mode, which will automatically rebuild the project on every content change.
The result is the same, but the site might react slower to changes.
When you feel you are ready, just create a pull request with your changes.
All "Open Math" content is written using TSX syntax, which is just a syntax sugar for writing content in XML-like markup inside TypeScript files.
This TSX content is handled via tsprose package. It transforms all tags to plain data objects, collects toc/search/unique elements and etc.
The Erudit CMS handles everything else: watching content changes, building frontend, providing default prose tags and many many more...
