Stundio (ˈstuːndio, like "stundu" in Latvian) is a next-generation mobile and web experience for EduPage, engineered for students who demand performance, usability, and modern design. We transform the often rigid and outdated educational interface into a fluid, high-performance tool that works seamlessly across all devices.
EduPage has significant UX issues that impact daily student usage:
- Lack of persistence: selected groups and settings are often lost
- Outdated UI: not optimized for modern mobile devices
- Performance issues: slow loading and weak responsiveness
- Cluttered interface: unnecessary complexity for simple tasks
Stundio introduces a student-first approach:
- Persistent state (your group and settings are always saved)
- Liquid UI with smooth and modern animations
- High performance with optimized rendering
- Full local processing (no tracking, no analytics)
- Smooth animations and transitions
- Fast client-side rendering
- Cross-platform support (Android, iOS, Web)
- Minimal and student-focused interface
Stundio is built using a scalable feature-first clean architecture with Flutter, designed for long-term maintainability and cross-platform support.
The architecture follows strict SOLID principles, ensuring modularity, testability, and clean separation of concerns.
Presentation → Domain → Data
Each feature is fully independent and self-contained.
Contains shared logic used across the application.
- DI (Dependency Injection)
- Networking (API client, interceptors, endpoints)
- Routing (navigation system)
- Theme (colors, typography, design system)
- Error handling (exceptions, failures)
- Utilities (validators, helpers)
- Shared widgets (buttons, inputs, loaders)
Each feature follows the same structure: feature/ data/ domain/ presentation/
- API models (DTOs)
- Remote and local data sources
- Repository implementations
- Entities (pure Dart objects)
- Repository interfaces
- Use cases (business logic)
- UI screens
- State management (Bloc/Cubit)
- Feature-specific widgets
UI → State Management → Use Case → Repository → Data Source → API
- Strict separation of concerns
- Dependency inversion
- Feature isolation
- Reusable components
- Testable domain layer
- No business logic in UI
Made from students for students.
Stundio exists to eliminate frustration caused by outdated educational systems and replace them with fast, intuitive tools.
- Issues → bug reports and suggestions
- Discussions → general ideas
- Pull Requests → open for contributions
Open-source project. Free to use, modify, and contribute.
Special thanks to teacher Monta for inspiration.