EmotionTracker is a cutting-edge web application developed by the Breakthrough team, leveraging AI to analyze user emotions through facial expressions. Designed with secure authentication, EmotionTracker provides an intuitive dashboard for users and administrators to manage and review emotional data effectively.
- Features
- Technology Stack
- Installation
- Usage
- Contribution Guidelines
- License
- Maintainers
- Contact
- Secure Login and Registration: Users can register with their email and log in securely using advanced authentication mechanisms.
- Emotion Recording: Analyze and record facial expressions to capture emotions.
- Profile Management: Update profile details, including name, email, and profile picture. Users can also delete their accounts if needed.
- Help and Support: Access assistance for troubleshooting and guidance.
- All-User Emotion Records: View and analyze emotional data for all registered users.
- User Management: Manage user accounts and access user details.
- Administrative Power: Includes all features available to regular users.
- React.js with Tailwind CSS: For a modern, responsive, and user-friendly interface.
- Python FastAPI: To handle API requests and business logic efficiently.
- MySQL: For robust storage and management of user and emotional data.
- Pre-trained Models: Utilizes advanced AI models for facial emotion recognition.
- JWT (JSON Web Tokens): Ensures secure and reliable user authentication.
-
Clone the repository:
git clone https://github.com/Breakthrough-pvt-ltd/emotion-tracker.git cd emotion-tracker -
Frontend Setup:
cd frontend npm install npm run dev -
Backend Setup:
cd backend python -m venv venv source venv/bin/activate # For Linux/MacOS venv\Scripts\activate # For Windows pip install -r requirements.txt uvicorn main:app --reload
-
Environment Configuration: To set up the environment variables required for the backend, follow these steps:
-
Navigate to the backend directory of the project.
-
Create a .env file in the backend directory.
-
Populate the .env file with the required variables. Below is an example structure for reference:
# Example .env file structure # Secret key for JWT token generation SECRET_KEY=<your-secret-key> # Database connection URL DATABASE_URL=mysql+aiomysql://<username>:<password>@<host>/<database_name>
- Replace
<your-secret-key>,<username>,<password>,<host>, and<database_name>with your specific values.
-
-
Database Setup:
- Create a MySQL database (e.g.,
emotion_tracker).
- Create a MySQL database (e.g.,
-
Run the Application:
- Start the backend server:
uvicorn main:app --reload - Start the frontend:
npm run dev
- Start the backend server:
-
User Registration:
- Register by providing your email and basic details.
-
Emotion Recording:
- Log in and navigate to the dashboard.
- Use the "Record Emotion" feature to analyze and save facial expressions.
-
Profile Management:
- Update your name, email, or profile picture. Delete your account if necessary.
-
Admin Panel:
- Access and manage user data, and review emotion records for insights.
This project was developed by the talented team at Breakthrough, with significant contributions from our lead developer, Noeal Rajeev. The collective effort reflects our commitment to building impactful and innovative solutions for modern challenges. We take pride in delivering high-quality, user-centric software that aligns with industry standards.
-
Fork the repository.
-
Create a feature branch:
git checkout -b feature-name
-
Commit your changes:
git commit -m "Add feature-name" -
Push the branch:
git push origin feature-name
-
Open a pull request.
This project is licensed under the MIT License. Copyright ©️ 2025 Breakthrough. All rights reserved.
- Noeal Rajeev Thaleeparambil - @NoealRajeev
- Abiya Biju - @abiya005
- Alfred Shaju - @alfredshaju7
For questions or support, please reach out at:
- Email: info@breakthrough.ind.in
- GitHub: Breakthrough