Client Application
Overview
The client application (labelled CHITTI. on market stores) is the entry point for customers who are currently enrolled (or) wish to be enrolled customers of CHITTI. to access the resources purchased (or) to be purchased.
The application allows users to sign in with their organizational learning management system credentials as a measure of secure authentication to provide a personally tailored experience. The users are then offered to purchase content for the subjects they wish to pursue, of which they are enrolled in the current semester in the organization. On successful purchase, the content is available to the users, which is revoked upon completion of the exam automatically.
NOTE: The client application provides a free-tier for the users, i.e, the first unit of every subject is provided as a freemium offerring.
The client application is available to the public for the following platforms:
Features
- View academic data
- View courses enrolled
- Purchase content for enrolled courses
- View course content
i. Roadmap: Roadmaps are marks-based weighted topics from each unit of the particular subject that help students prepare their exam preparation journey.
ii. Videos: Easy-to-understand short informal video lectures taught by academically-well performing students in a layman format.
iii. Notes: Handwritten notes from academically-well performing students help students prepare for the exam with detailed information as dictated by the faculty.
iv. Important Questions: Important questions to revise the exam preparation based on deep analysis through previous year question papers and faculty-recommendations.
v. Cheatsheets: Last minute revision of important formulae and diagrams to ace the bonus marks through well-presentation and calculation-based answers. - Recieve reminders and motivation for exam preparation.
- Support single-device sign-in.
- Prevents screenshots, screen recording nor casting/screen-share of internal content.
Technology Stack
Architecture
Assuming the usage of the client application to be high and predicting the behaviour of application users, we identify a heavy requirement for well-architected modelling to handle the high surge in data and request to the server. Thus the application makes well use of the clean architectural principles and components which will be discussed in the next page.
Setup
The entry point to the code is available at lib/main.dart.
Repository
URL: https://github.com/theananta/chitti-app
Steps to run
To run the client application:
- Clone the repository.
- Run
flutter devicesto list available devices to run the application on. - Run
flutter run -d {device-identifier}.
References
1. The "Flutter" name and logo are trademarks owned by Google.2. The "Firebase" name and logo are trademarks owned by Google.