A complete full-stack course platform mobile application built with
Flutter (Dart, MVVM architecture) on the frontend and
Spring Boot + PostgreSQL on the backend.
CourseConnect allows users to discover courses, enroll, track progress, complete lessons, leave reviews, and manage favorites, all through a modern and intuitive mobile experience.
This project demonstrates real-world full-stack development, including secure authentication, progress tracking, clean architecture, and professional documentation.
CourseConnect is designed as a learning management mobile platform where users can:
- Register and authenticate securely
- Browse and search courses by category or keyword
- Enroll in courses and complete lessons progressively
- Track learning progress visually
- Rate and review courses
- Manage favorite courses
- Edit personal profile information
The application follows MVVM architecture on the frontend and a layered architecture on the backend, ensuring scalability, maintainability, and clean separation of concerns.
- Flutter (Dart)
- MVVM Architecture
- REST API Integration
- ViewModels for state management
- Responsive UI
📄 Frontend documentation (screens & UI walkthrough):
➡️ Frontend README
- Java
- Spring Boot
- Spring Security + JWT
- Hibernate (JPA)
- PostgreSQL
- Docker & Docker Compose
📄 Backend documentation (API, security, database, Docker):
➡️ Backend README
- Secure user authentication (JWT)
- Course browsing & searching
- Category-based discovery
- Course enrollment & unenrollment
- Lesson locking/unlocking based on progress
- Progress tracking (percentage & lesson count)
- Reviews & ratings
- Favorites management
- Profile editing
- Third-party API integration (Find Us)
Below are key screens from the main user journey.
Images are shown as clickable previews to keep the README clean.
Click any image to view it in full size.
Swipeable onboarding screens introducing the app with options to Create Account or Sign In.
Email and password authentication screen.
User registration with name, email, password, and short bio.
The home screen includes:
- Personalized greeting and profile image
- Notifications bar
- Search by course title or topic
- Category-based browsing
- Continue Learning section with progress percentage
- Recommended courses
- Bottom navigation (Home, My Courses, Favorites, Profile)
Profile management screen where users can:
- View name, email, and profile photo
- Edit personal information
- View enrolled and completed courses
- Access certificates
- Open settings
- Use Find Us (third-party API – location)
- Log out
Courses marked as favorites with the ability to add or remove them using the heart icon.
- Continue tab: ongoing courses with progress and “Continue” button
- My Courses tab: filter enrolled courses (All / Ongoing / Completed)
Users can:
- Search courses by keyword
- Browse all available courses
- Filter courses by category
Each course contains multiple tabs:
Lessons are unlocked progressively based on completion status.
Student ratings and reviews.
Instructor profile with rating, specialization, and student count.
For all screenshots (27–30 screens) with detailed explanations for every feature:
➡️ See the Frontend README for the complete UI walkthrough.
course_connect/ │ README.md │ ScreenShot/ │ Frontend/ │ └── README.md │ Backend/ │ └── Course_Connect_backend/ │ └── README.md └── .gitignore
CourseConnect is a complete full-stack mobile application demonstrating:
- Clean architecture (MVVM + layered backend)
- Secure authentication with JWT
- Rich mobile user experience
- Scalable backend with Docker & PostgreSQL
- Professional documentation and GitHub structure
This project fulfills all functional requirements and showcases strong full-stack engineering skills.













.jpg)





.jpg)
2.jpg)
.jpg)
.jpg)
2.jpg)
.jpg)