Welcome to the TKS Prepify repository! This project is a comprehensive Exam Preparation Platform built by TheKhanSoft to empower individuals preparing for various exams with robust, AI-enhanced features.
- Introduction
- Features
- Technologies Used
- Installation
- Usage
- Configuration
- Testing
- Contributing
- Code of Conduct
- Security Vulnerabilities
- License
- Contact
TKS Prepify is a comprehensive web application meticulously designed to serve as a robust platform for individuals preparing for various exams. The application provides a powerful set of tools for both administrators and exam takers to streamline question management, exam creation, AI-powered feedback, and performance analysis—all with a modern, responsive interface.
- User Authentication: Secure signup and login for users and administrators using Firebase Authentication.
- Admin Dashboard:
- Manage exam categories, papers, questions, and user accounts.
- Create, edit, copy, and delete exam papers and questions.
- User Experience:
- Browse categories and select papers easily.
- Take exams with an interactive, timed interface.
- Get detailed results analysis, including score breakdown and performance insights.
- AI Integration:
- Description generation for categories/papers.
- SEO optimization for content.
- Personalized feedback on exam performance.
- AI-based study resource recommendations.
- Responsive Design: Mobile-friendly UI with modern component library (Shadcn UI).
- Comprehensive Reporting: View score breakdowns and analytics.
- Framework: Next.js
- Frontend: Next.js, React, TypeScript
- Backend: Firebase (Authentication, Firestore)
- UI Components: Shadcn UI
- AI/ML: Genkit
- Styling: Tailwind CSS
Follow these steps to set up the project locally:
- Clone this repository:
git clone https://github.com/TheKhanSoft/tks-prepify.git
- Navigate to the project directory:
cd tks-prepify
- Install dependencies:
npm install
- Set up your environment variables by copying
.env.example
to.env
and updating as needed. - Configure Firebase credentials and Genkit settings as required.
- Start the development server:
npm run dev
- Access the application in your browser at
http://localhost:3000
. - Log in or sign up as a user or administrator to explore features.
- All configuration files are found in the root or
src
directory (e.g.,src/lib/firebase.ts
,src/ai/genkit.ts
). - Edit
.env
to set up API keys, Firebase credentials, and other environment variables as needed.
- Currently, manual testing is recommended. Automated tests may be added in future releases.
- To contribute tests, create files in a
__tests__
ortests
directory using your preferred testing framework.
We welcome contributions from the community! To contribute:
- Fork this repository.
- Create a new branch for your feature or bugfix.
- Commit your changes and push to your branch.
- Submit a pull request with a detailed description of the changes.
Please review and abide by our Code of Conduct to ensure a welcoming community for all.
If you discover a security vulnerability, please report it by emailing TheKhanSoft. We will address all security issues promptly.
This software is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License.
See the LICENSE file for more detail.
For any questions or inquiries, feel free to reach out:
- GitHub: TheKhanSoft
- Email: thekhansoft (at) gmail dot com
Thank you for contributing to and supporting TKS Prepify!