DSA Tracker
The DSA Tracker project aims to help users track their progress in solving Data Structures and Algorithms (DSA) questions.
# DSA Tracker
## Description
DSA Tracker is a web application designed to help you track and manage your Data Structures and Algorithms (DSA) practice questions using MERN stack. This application allows you to add, edit, delete, and search questions based on different criteria such as question type. Additionally, it provides statistics overview to track your progress and a profile section to manage your user information. Additionally it also includes features such as streaks, heatmaps etc to motivate you to consistently do the work.
## Features
1. Add New Question: Easily add new DSA questions with details like question text, type, and notes.
2. Filter and Search: Filter questions by type (e.g., Array, Stack) and search for specific questions.
3. Edit and Delete: Edit existing questions to update details and delete questions as needed.
4. Statistics Overview: View statistics such as total questions, total attempts, and average attempts per question.
5. Question Details: Click on a question to view detailed information about it.
6. Calendar Heatmap: Displays a calendar heatmap visualization to track question creation dates and streaks.
7. Export to PDF: Export your list of questions to a PDF document for offline reference.
8. Share Stats: Allows users to share their DSA Tracker stats on Twitter and Facebook.
9. Stats Page: Check out your overall statistics, including a calendar heatmap of your practice sessions.
10. Streaks: Track consecutive days of practice to motivate users to maintain a consistent practice routine.
11. Profile Page: View a visual representation of your DSA practice badges.
## Technologies Used
### Frontend
- React
### Backend
- Node.js
- Express.js
- MongoDB
## Installation
1. Clone the repository: gh repo clone sivani-l-r/DSA_Tracker
2. Navigate to the project directory: cd dsa-tracker
3. Install dependencies: npm install
4. Start the development server: npm start
5. Open your browser and visit http://localhost:3000 to use the DSA Tracker.
## Dependencies
1. React: The core library for building user interfaces in React applications.
2. axios: A promise-based HTTP client for making requests from the browser.
3. PDFViewer, Document, Page, Text: Components from '@react-pdf/renderer' used for generating PDF documents.
4. TwitterShareButton, FacebookShareButton: Components from 'react-share' for sharing content on Twitter and Facebook.
5. Plotly.js: A JavaScript graphing library that enables interactive, publication-quality graphs in web applications.
## Team Members
- [Sivani L R](https://github.com/sivani-l-r)
- [Arathi Krishna A M](https://github.com/arathikrishnaam)
- [Khadeeja Thanseeha V ](https://github.com/khadeeja-thanseeha)
- [Adithya Ramesh](https://github.com/Adithya6ramesh)
## Contributing
Contributions are welcome! Feel free to open issues or submit pull requests for improvements or bug fixes.
Feature added - Add quesitions Filter Search Edit Delete Stats Heat Map Streaks Notes PDF Generation
Project created by Khadeeja Thanseeha V