Anki is a smart spaced repetition flashcard program
Find a file
Abdo f94d05bcbe
Switch to Ruff (#4119)
* Add check:ruff build action

* Add fix:ruff action

* Add Ruff config

Mostly generated by Cursor

* Handle rest of lints

* Fix formatting

* Replace black and isort with ruff-format

* Run ruff-format

* Fix lint errors

* Remove pylint disables

* Remove .pylintrc

* Update docs

* Fix check:format not just checking

* Fix isort rule being ignored

* Sort imports

* Ensure ./ninja format also handles import sorting

* Remove unused isort cfg

* Enable unsafe fixes in fix:ruff, and enable unused var warning

* Re-run on config change; enable unnecessary ARG ignores

* Use all pycodestyle errors, and add some more commented-out ones

Latter logged on https://github.com/ankitects/anki/issues/4135
2025-06-29 14:38:35 +07:00
.buildkite Auto-expand bundle progress in Buildkite on Linux 2025-01-26 19:37:34 +11:00
.cargo Migrate build system to uv (#4074) 2025-06-19 14:03:16 +07:00
.config Drop workspace-hack in favor of workspace deps 2023-06-23 17:41:31 +10:00
.cursor/rules Make URL schemes dialog more ergonomic (#4002) 2025-05-15 16:17:33 +10:00
.github/ISSUE_TEMPLATE Move away from Bazel (#2202) 2022-11-27 15:24:20 +10:00
.vscode.dist Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
build Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
cargo Upgrade to nom 8.0.0 (#4105) 2025-06-21 19:15:19 +07:00
docs Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
ftl Update to Rust 1.88 2025-06-29 11:50:49 +07:00
proto Feat/Cmrr target selector (#4116) 2025-06-27 16:44:19 +07:00
pylib Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
python Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
qt Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
rslib Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
tools Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
ts FIX: Margin between icon was selectable but shouldn't be (#4122) 2025-06-28 21:47:29 +03:00
.deny.toml Migrate build system to uv (#4074) 2025-06-19 14:03:16 +07:00
.dockerignore Add distroless Dockerfile and implement internal health check (#3366) 2024-08-29 17:05:33 +07:00
.dprint.json Migrate build system to uv (#4074) 2025-06-19 14:03:16 +07:00
.eslintrc.cjs Include error message text on page 2024-06-24 15:35:47 +07:00
.gitattributes try again to improve GitHub's language stats 2021-01-20 13:20:45 +10:00
.gitignore Experiment with Claude 2025-06-19 13:17:30 +07:00
.gitmodules Migrate build system to uv (#4074) 2025-06-19 14:03:16 +07:00
.mypy.ini Migrate build system to uv (#4074) 2025-06-19 14:03:16 +07:00
.prettierrc Switch back to Prettier for Svelte formatting 2025-01-13 15:53:55 +11:00
.python-version Migrate build system to uv (#4074) 2025-06-19 14:03:16 +07:00
.ruff.toml Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
.rustfmt-empty.toml Move away from Bazel (#2202) 2022-11-27 15:24:20 +10:00
.rustfmt.toml Move ascii_percent_encoding into a separate repo 2023-04-12 08:45:23 +10:00
.version Bump version 2025-06-27 21:08:56 +07:00
.yarnrc.yml Yarn 4 (#3772) 2025-01-26 14:40:17 +11:00
Cargo.lock Refactor launcher + various tweaks 2025-06-27 16:10:12 +07:00
Cargo.toml Add uninstall support to launcher 2025-06-29 13:32:06 +07:00
check Add a shortcut to auto-format before running checks 2023-07-02 09:59:05 +10:00
CLAUDE.md Python dependency/wheel tweaks 2025-06-27 16:10:12 +07:00
CONTRIBUTORS Remove newline: 'Restore to default confirmation' (#4128) 2025-06-27 16:50:06 +07:00
LICENSE Drop Pauker and SuperMemo importers from legacy importer 2025-06-27 16:10:12 +07:00
ninja Migrate build system to uv (#4074) 2025-06-19 14:03:16 +07:00
package.json Bump vite from 5.4.18 to 5.4.19 (#4018) 2025-05-19 13:38:53 +10:00
pkgkey.asc add public key for release signing 2018-09-18 10:40:45 +10:00
pyproject.toml Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
README.md Updated README (#2718) 2023-10-11 14:11:07 +10:00
run Migrate build system to uv (#4074) 2025-06-19 14:03:16 +07:00
run.bat Migrate build system to uv (#4074) 2025-06-19 14:03:16 +07:00
rust-toolchain.toml Update to Rust 1.88 2025-06-29 11:50:49 +07:00
SECURITY.md add SECURITY.md 2021-09-22 22:55:19 +10:00
uv.lock Switch to Ruff (#4119) 2025-06-29 14:38:35 +07:00
yarn Switch to SvelteKit (#3077) 2024-03-31 09:16:31 +01:00
yarn.bat Switch to SvelteKit (#3077) 2024-03-31 09:16:31 +01:00
yarn.lock Bump vite from 5.4.18 to 5.4.19 (#4018) 2025-05-19 13:38:53 +10:00

Anki

Build status

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

Anki Betas

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

Developing

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

Contributing

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

Anki Contributors

CONTRIBUTORS

License

Anki's license: LICENSE