Docs
Preface
CHITTI. Your last minute exam preparation buddy. (hereforth refered to as CHITTI.) is an edutech venture built under the roof of the Venture Development Center, Gandhi Institute of Technology and Management (GITAM), as of on date April 23, 2025. The application and its technical dependencies were built by the house of the ananta studio.
The application can be modularized in to the following which will be individually discussed in further sections in detail:
Modules
Landing webpage
Landing webpage serve a source of information about the product, its model and provides useful resources for new customers and organizations that need reliable source of information to establish a mutual agreement over information shared, thus allowing us to make use of services provided by the said 3rd party organization.
In the context of CHITTI., the landing webpage serves as the source of information for
• new customers to understand the product, its benefits;
• serves as a reliable source of information to be shared with the market stores for individual platforms that host the client application (eg. Play Store, App Store, etc.);
• and the Razorpay team to meet with their policies and make payments.
Technology Stack:
- HyperText Markup Language (HTML)
- TailwindCSS 1
- JavaScript (JS)
Hosting
Platform: GitHub Pages
URL: The webpage can be accessed at scorewithchitti.in.
Setup
The entry point to the code is available at index.html.
Repository
URL: https://github.com/theananta/chitti-landing
Steps to run
To run the client application:
- Clone the repository.
- Open the index.html file.
Client application
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 email address and password used to login to the learning management system portal, 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:
Technology Stack
Detailed architectural overview about the landing webpage can be found here.
Serverlet application
The serverlet application serves as the interface (API) exposing the application data from the database via well-defined syntax, requests and semantics termed as API routes.
The serverlet application depends on the representational state transfer (REST) architecture to serve client requests to the underlying data based on the HTTP request/response protocol. As a user makes a request to a specific endpoint of the serverlet, an SQL query is run to fetch/modify data in the database to respond with a specific response with a specific HTTP status code.
Technology stack:
Hosting
- Firebase 3 Functions
The servelet application is written as a specialized non-preemptive application hosted over the Firebase 3 Function offerring in the free tier. - Supabase 7
The SQL offerring of the supabase is used to host the database for the entire application which is connected using the pooling and connection url using Prisma as the ORM.
Admin web application
The admin web application serves as the interface between the database and content that is served over the serverlet application.
The web application allows the admins (users with elevated permissions to manage content) to view, edit and delete subjects, units, topics and the content for each of the earlier stated hierarchial unit.
Every route and operation is secured with token-based authentication.
Technology Stack:
Hosting
Platform: Vercel
URL: The admin panel can be accessed at admin.scorewithchitti.in.
Detailed architectural overview about the admin application can be found here.
References
1. The Tailwind name and logos are trademarks of Tailwind Labs Inc.2. The "Flutter" name and logo are trademarks owned by Google.
3. The "Firebase" name and logo are trademarks owned by Google.
4. The Next.js trademark includes the Next.js name & logo, and any word, phrase, image, or other designation that identifies any Vercel products.
5. Node.Js and Express are projects of the OpenJS Foundation. This is a statement of the OpenJS Foundation’s trademarks and its policy and guidelines relating to use of trademarks owned by the OpenJS Foundation and used by projects under the OpenJS Foundation.
6. Postgres, PostgreSQL and the Slonik Logo are trademarks or registered trademarks of the PostgreSQL Community Association of Canada.
7. All Supabase trademarks, logos, or other brand elements can never be modified or used for any other purpose other than to represent Supabase Inc.