Open-source project
antoniolupetti/algebrica avatar
antoniolupetti/algebrica

Algebrica: a Markdown and LaTeX mathematics knowledge base you can reuse

Algebrica is free and open a mathematical knowledge base dedicated to clarity, structure, and conceptual coherence.

1,015 stars67 forksUnknownNOASSERTION

At a glance

What is it?
Algebrica is a free, ad-free university-level mathematics knowledge base whose source entries, editable SVG figures and semantic JSON layer are published in a GitHub repository under CC BY-NC 4.0. It is documentation-shaped, not software: there is nothing to install, and the value is in the files.
Who is it for?
Adopt Algebrica if you need reusable mathematics source files for teaching material, a non-commercial study aid, or a semantic layer of definitions, lemmas and theorems to build on. Do not adopt it if you need a complete corpus today, a permissively licensed dataset for a commercial product, or an API.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 7 days ago.
What is it written in?
GitHub does not report a main language for this repository.

Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

What Algebrica actually is, and what it is not

Algebrica is a mathematics knowledge base, not a library you import. The README describes it as "a free, ad-free, university-level mathematics knowledge base", and the repository holds the source content behind the site at algebrica.org. The intended reader is someone who wants mathematical exposition they can read, quote, adapt or republish: a student working through limits and integrals, a teacher assembling course notes, or a developer who needs mathematical definitions in a structured form rather than as prose on a web page.

The distinction matters for evaluation. There is no runtime, no server, no package to add to a dependency list. If you arrive expecting a tool that computes derivatives, you are in the wrong repository. What you get instead is a corpus: entries written in Markdown with LaTeX for the mathematics, illustrations as editable SVG, a semantic JSON layer holding definitions, properties, lemmas and theorems, and Markdown-based flowcharts for problem-solving procedures. The README states the repository releases these "progressively", which is the single most important word in the description.

How the repository is organised, and what the directory names tell you

The top level is a subject tree rather than a code tree. Directories include algebraic-structures, complex-numbers, derivatives, differential-calculus-theorems, differential-equations, equations, functions, inequalities, integrals, introduction, kinematics, limits, linear-systems, lines-planes-conic-sections, logic, pages, polynomials, powers-radicals-logarithms, probability-and-statistics, sequences, series, sets-and-numbers, trigonometry, various, and vectors-and-matrices. Alongside them sit category, github-assets, LICENSE.md and README.md.

That layout is informative. Topics are grouped by the mathematical domain a reader would search for, not by content type, so Markdown entries, SVG figures and any JSON for a topic live together under the topic. The presence of category and pages suggests site navigation and static page content are versioned in the same repository as the mathematics. The README points to one worked example of the Markdown format, integrals/definite-integrals.md, which is the fastest way to judge whether the writing style and LaTeX conventions suit you before reading anything else. If a subject you need has no directory, it has not been migrated yet.

The semantic JSON layer is the part worth watching

Most open mathematics content stops at prose and formulas. The README describes something more ambitious: "a semantic JSON layer containing definitions, properties, lemmas, theorems, and other formal mathematical structures associated with the entries, designed to be portable, reusable, and openly accessible". If that layer is populated for the topics you care about, it changes what you can build. Definitions and theorem statements become addressable objects rather than paragraphs you have to parse, which is the difference between scraping a website and consuming a dataset.

The README is candid that this is unfinished. The checklist item "Complete the ontological model that defines relationships between mathematical concepts" is unchecked, and a "SKOS-based semantic graph" for concept exploration and interoperability is listed as future work. So the semantic layer exists as a direction and as partial content, not as a finished ontology with a documented schema. Before designing anything around it, open the JSON files in the subject directory you need and see what is actually there. The README does not document a schema version, a stability guarantee, or a changelog for that layer, and that silence is itself the answer to whether you should treat it as a fixed interface.

Reading the content: the repository gives no install steps

There is no installation step because there is no software to install. The README does not document a package manager command, a container image, a build step or a CLI, and it does not list a clone command either. It points readers to the website at algebrica.org for the published entries and to the repository for the source content, with the Home, About, Editorial Process and Support links at the top of the README as the entry points.

What the README does give is a single worked example of the file format: the example page at https://github.com/antoniolupetti/algebrica/blob/main/integrals/definite-integrals.md. That link is the concrete starting point. Open it in the browser, or navigate to integrals/definite-integrals.md in your own local copy of the repository, and you can see how an entry is structured: Markdown headings, LaTeX for the mathematics, and the surrounding conventions the rest of the corpus follows. If you need the files offline, use whatever Git client you already have to obtain the repository, since the README itself prescribes no particular command. The README also states that the SVG illustrations can be modified directly through the source code, which means the figures are text files you can open in an editor rather than exported bitmaps.

The migration is incomplete, and that is the main limitation

The README's status list is explicit. Migrating all mathematical entries to Markdown and making them openly available through GitHub is marked IN PROGRESS. Converting existing graphics to editable SVG is also IN PROGRESS. Expanding the knowledge base, completing the ontological model and building the SKOS graph are all unchecked. As of July 2026, the README states the site contains approximately 250 entries, but the repository does not necessarily contain all of them in migrated form.

The practical consequence is that you cannot assume coverage. A topic directory may exist with a handful of entries while the website carries more. If your plan depends on a specific subject being present, verify it in the repository rather than on the site. The second limitation is licensing. The README states content is released under Creative Commons Attribution-NonCommercial 4.0, which permits reuse for non-commercial purposes with attribution. Any commercial use, including bundling the content into a paid product or a commercial training corpus, falls outside that grant. The repository's licence field reports NOASSERTION, so treat LICENSE.md as the authoritative text rather than the GitHub label. This is a description of the terms, not legal advice.

A third point is provenance. The README is unusually open about tooling: the author states English is not his native language, that he uses Grammarly for proofreading, and that he has started using Codex and Claude Cowork to improve internal linking, fix sentences, reorganise structure and look for inaccuracies that he then verifies individually. The mathematical content is described as entirely his own. That is a reasonable editorial position, and it is also something a reviewer should factor in: the corpus mixes hand-written mathematics with machine-assisted language editing, and the README does not mark which passages received which treatment.

Where Algebrica sits against other open mathematics sources

The obvious comparison is with reference works that are also openly licensed but organised differently. Wikipedia's mathematics articles are collaboratively written, heavily cross-linked, and licensed under CC BY-SA, which is a share-alike term: adaptations must carry the same licence. Algebrica uses CC BY-NC 4.0, which restricts commercial use instead of requiring share-alike. For a teacher building a free course pack, both work; for anyone planning a commercial product, Wikipedia's share-alike is a different obstacle from Algebrica's non-commercial restriction, and neither is a permissive software licence.

A second comparison is with static site generators and documentation frameworks. Those give you a pipeline and expect you to supply the content. Algebrica supplies the content and expects you to bring the pipeline. If what you actually need is a build system for your own notes, Algebrica is the wrong tool and a generator is the right one. If what you need is mathematical exposition you do not have to write, the relationship inverts. The distinguishing feature against both is the semantic JSON layer: a wiki gives you linked prose, and a generator gives you an empty shell, while Algebrica is attempting structured mathematical objects alongside the prose. That attempt is incomplete, but it is the reason to look at this repository rather than copy text from a website.

Maintenance, upgrade cost and licence implications

The repository is not archived, and the last push was on 2026-09-12, four days before this writing. The README describes a long-term effort with a deliberate phase since March 2026 focused on revising, correcting and extending existing entries rather than adding new ones. For a consumer of the content, that is a favourable signal for quality and an unfavourable one for breadth: expect existing entries to change under you.

Upgrade cost is therefore mostly a diffing problem, not a dependency problem. There are no releases retrieved for this repository, so there is no versioned artefact to pin. If you fork or vendor the content, record the commit you took and re-diff periodically against main to see which entries were revised. Because entries are revised in place, a formula or a definition you copied may be corrected later without any version bump to tell you. Budget for re-reading the subjects you depend on.

On licensing: CC BY-NC 4.0 permits non-commercial reuse with attribution, per the README. Attribution means naming Algebrica and the author, Antonio Lupetti, and linking the licence. The repository's licence metadata reports NOASSERTION, so if your use is borderline commercial, read LICENSE.md and the linked Creative Commons deed directly. Nothing here is legal advice.

Editorial conclusion

Adopt Algebrica if you need reusable mathematics source files for teaching material, a non-commercial study aid, or a semantic layer of definitions, lemmas and theorems to build on. Do not adopt it if you need a complete corpus today, a permissively licensed dataset for a commercial product, or an API. Before relying on it, check the specific topic directory you need, confirm the entry is present as Markdown rather than only on the website, and read LICENSE.md to confirm how CC BY-NC 4.0 applies to your use.

Frequently asked questions

What is Algebrica?

Algebrica is a free, ad-free, university-level mathematics knowledge base. The GitHub repository hosts the source content of the entries published on algebrica.org, released progressively in Markdown format and reusable under a non-commercial licence.

What is the hardest branch of math?

The repository does not rank branches of mathematics by difficulty. It is organised as a subject tree, with directories such as algebraic-structures, differential-equations, integrals and probability-and-statistics, and the README says nothing about which of them is hardest.

How is algebra used in real life?

The repository does not address applications of algebra to everyday problems. It is organised as a subject tree of mathematical topics, from sets-and-numbers and equations to derivatives, integrals and probability-and-statistics, so questions about practical applications fall outside what the material covers.

What is an algebraic equation in simple terms?

The repository contains an equations directory among its subject folders, but the README does not give a definition of an algebraic equation. The README points to integrals/definite-integrals.md as its example entry, and the definitions themselves live in the entry files rather than in the README.

Official sources

  1. antoniolupetti/algebrica on GitHub
  2. Issues
  3. Project website
  4. README
Community notes

Community notes