Anki is a free, open source education project written in Rust and released under a custom open-source licence. It has 30,973 GitHub stars, 3,220 forks and 512 open issues, and was last pushed 5 hours ago. On this registry it ranks #1 of 2 tracked projects in Education, with 5 head-to-head comparisons available. It gained 477 stars over the last 6 tracked days.

What is Anki?

What it is

Anki is a spaced repetition flashcard program that schedules review of items based on memory performance, ensuring long-term retention with minimal effort. It lives in the cross-platform desktop and mobile education software ecosystem, with a primary focus on the computer version hosted at apps.ankiweb.net. The project is maintained by ankitects and distributed under a NOASSERTION license, meaning no explicit license terms are declared in the repository.

Key capabilities

  • Schedules flashcard reviews using a spaced repetition algorithm tuned to individual recall performance
  • Supports rich media including images, audio, and LaTeX-rendered math
  • Allows custom card templates and note types for flexible content structuring
  • Syncs study progress across devices via a free official sync server or self-hosted alternatives
  • Provides statistical analysis and progress tracking through built-in graphs and metrics
  • Offers a plugin system for extending functionality without modifying core code
  • Runs natively on Windows, macOS, and Linux with a shared codebase

Who uses it and how

  • Students use Anki to memorize vocabulary, historical dates, and scientific concepts through custom decks
  • Medical professionals and students build decks for anatomy, pharmacology, and clinical knowledge
  • Language learners create audio-enabled cards for pronunciation and listening practice
  • Developers and engineers maintain personal knowledge bases using code snippets and technical notes
  • Self-hostered deployments use local databases and optional SMTP for notifications in air-gapped environments

Getting started

Download prebuilt binaries from https://apps.ankiweb.net or install via package managers like Homebrew (brew install --cask anki) or APT. The official sync server requires an account; self-hosting requires setting up a PostgreSQL database and storage backend per dev-docs. Beta builds are available at https://betas.ankiweb.net for testing unreleased features.

When to use it — and when not to

Anki replaces paid spaced repetition tools like RemNote or Brainscape by offering equivalent core functionality without subscription fees, but lacks built-in collaboration or guided curriculum features. Users must manage their own sync, backup, and database maintenance if self-hosting, and the project has no official commercial support. It is unsuitable for passive consumption or collaborative learning workflows, and its plugin ecosystem, while active, is less mature than commercial alternatives.

project readme (upstream, from github) — read inline

Anki

Build Status Documentation Coverage

This repo contains the source code for the computer version of Anki.

About

Anki is a spaced repetition program. Please see the website to learn more.

Getting Started

Contributing

Want to contribute to Anki? Check out the Contribution Guidelines.

For more information on building and developing, please see Development.

Contributors

The following people have contributed to Anki: CONTRIBUTORS

Anki Betas

If you'd like to try development builds of Anki but don't feel comfortable building the code, please see Anki betas.

License

Anki's license: LICENSE

Frequently asked questions

Is Anki free to use?

Anki is open source. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does Anki do?

Spaced repetition flashcards that remember for you

What is Anki written in?

Anki is primarily written in Rust. Its source is publicly available at https://github.com/ankitects/anki, and it has 30,973 GitHub stars.