AniCanon is an anime creation studio — we build tools for creating canon-consistent anime characters, scenes, and stories at anicanon.studio.
The infrastructure we build along the way gets extracted and open-sourced here once nothing product-specific is left in it. It's mostly mobile for now — Swift on iOS, a good amount of Swift running on Android, and where a thing has to look identical on both, Kotlin beside it — with more likely to follow.
| koma | A small, fast cross-platform SQLite persistence layer for iOS and Android Swift — typed records, refresh policies, close-to-C performance on our benchmarks. |
| mekuri | A page-curl pager for SwiftUI and Jetpack Compose — the corner lifts, the sheet peels under the finger, and a two-page spread turns a genuinely double-sided leaf. |
| tatami | A lightweight, virtualized masonry layout for SwiftUI — native aspect ratios, deterministic frames, smooth at hundreds of media cells. |
| torii | Shared-element flights for SwiftUI — elements fly across sheets, navigation stacks, and separate windows, driven by views appearing and disappearing. Public API only. |
| swift-android-codegen | Generates Android-ready bindings from shared Swift modules — the codegen behind our shared iOS/Android Swift core. |
| swift-java-kotlin-accessors | Post-processes swift-java's generated Java bindings into Kotlin-friendly sources — nullable rewrites, arena-free overloads, Gradle plugin included. |
Issues and pull requests are welcome on all public repos — see our contribution guidelines. Security reports go through each repository's private vulnerability reporting (Security tab).
