A modern, offline-first manga and light novel reader. This monorepo contains the Flutter application, NestJS API, native SwiftUI application, and Keihatsu website.
apps/
├── flutter/ # Cross-platform Flutter application
├── api/ # NestJS/TypeScript backend
├── ios/ # Native SwiftUI application
└── web/ # Next.js website
- Extension System: Discover content from various sources via a modular extension architecture.
- Offline-First Library: Fast, local database management using Isar DB for a responsive experience even without internet.
- Persistent Themes: Fully customizable UI with persistent brand colors, light/dark modes, and "Pure Black" OLED support.
- Advanced Reader: High-performance reader with chapter bookmarking, history tracking, and smooth navigation.
- Download Manager: Save chapters locally for offline reading with background download support.
- Global Search: Search for manga across all enabled extensions simultaneously.
- Community: Real-time nested comments and interactive user profiles.
- Smart Sync: Seamlessly sync your library, history, and preferences with the Keihatsu API.
- Framework: Flutter
- State Management: Provider
- Database: Isar (NoSQL, high performance)
- Local Storage: Shared Preferences
- Networking: http & Dio
- Icons & Fonts: Phosphor Icons & Google Fonts
- Flutter SDK (latest stable)
- Node.js, npm, and pnpm
- Xcode
- Android Studio / VS Code with Flutter extension
-
Enter the Flutter application:
cd apps/flutter -
Install its existing dependencies:
flutter pub get
-
Generate local database schemas:
flutter pub run build_runner build --delete-conflicting-outputs
-
Configure API Endpoint:
- Open
apps/flutter/lib/services/api_constants.dartfrom the repository root. - Update
baseUrlto point to your running backend API.
- Open
-
Run the app:
flutter run
cd apps/api
npm run start:devOpen apps/ios/Keihatsu.xcodeproj in Xcode.
cd apps/web
pnpm install
pnpm devapps/flutter/lib/
├── components/ # Reusable UI widgets
├── models/ # Data models and Isar schemas
├── providers/ # State management
├── screens/ # Feature pages
├── services/ # API clients and repository logic
└── theme_provider.dart # Global UI styling and persistence
MIT License. See LICENSE for details.