DevAtlas is a gamified mobile learning companion designed to guide software developers through structured learning paths. Built with modern Android technologies, it simplifies the chaos of self-learning by providing clear roadmaps, quizzes, and progress tracking.
| Home Screen | Roadmaps List | Chapter Details | Interactive Quiz |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
| User Progress | Settings | Dark Mode |
|---|---|---|
![]() |
![]() |
![]() |
(Note: The app fully supports both Light and Dark themes)
- 📚 Structured Roadmaps: Curated learning paths for Frontend, Backend, and DevOps with step-by-step module tracking.
- 🎮 Gamification Engine:
- Daily Streaks: Logic to track consistency (Lazy evaluation on client-side).
- 📝 Interactive Quizzes: Dynamic tests for every chapter with instant feedback and "Retake" logic.
- ☁️ Cloud Sync & Auth: Seamless synchronization using Firebase Firestore and secure authentication via Firebase Auth.
- 🔔 Smart Notifications: Local retention notifications to remind users to maintain their streak.
The application follows the MVVM (Model-View-ViewModel) architectural pattern and adheres to Clean Architecture principles to ensure separation of concerns and testability.
- Language: Kotlin
- UI Toolkit: Jetpack Compose (Material Design 3)
- Asynchronous Programming: Coroutines & Flow
- Backend-as-a-Service:
- Firebase Auth: Email/Password & Google Sign-In.
- Cloud Firestore: NoSQL database for user data and roadmap content.
- Local Persistence:
- Shared Preferences For lightweight preferences (Theme, Local Settings).
- Background Processing: WorkManager for notification scheduling and data sync.
- Navigation: Jetpack Compose Navigation.
This project was developed as part of the Software Engineering course at the International Hellenic University.
- Team Size: 6 Members
- Methodology: Agile/Scrum (1-week sprints).
To run this project locally:
- Clone the repo:
git clone https://github.com/antomich04/DevAtlas.git
- Open in Android Studio:
- Ensure you have the latest version (Ladybug or newer).
- Firebase Setup:
- You will need your own
google-services.jsonfile. - Create a project in Firebase Console, enable Auth and Firestore, and place the file in the
app/directory.
- You will need your own
- Build & Run:
- Select an emulator or physical device and click Run (
Shift + F10).
- Select an emulator or physical device and click Run (
Distributed under the MIT License. See LICENSE for more information.






