The HackMIT Development Tracker is a web application designed to track the progress of various projects within the HackMIT development team. It allows for the management of project goals, tasks, and team members, with a focus on visualizing progress through a series of progress bars.
- Track project progress with master progress bars.
- Manage high-level goals and fine-grained tasks.
- Attach GitHub PRs and issues to tasks and goals.
- Add and manage team members across projects.
- Persist application state in a Postgres database.
- Add projects and team members from the landing page.
- Confetti animation when a progress bar reaches 100%.
- Node.js
- npm or yarn
- Python 3
- Flask
- PostgreSQL
git clone https://github.com/techx/hack-dev-tracker.git
cd hack-dev-trackercd client
npm installcd server
pip install -r requirements.txtEnsure PostgreSQL is running and create a database for the application. Initialize the database schema using the provided schema.sql file.
Set up the .env files in both the client and server directories with the following variables:
REACT_APP_API_URL=http://localhost:5000
SQLALCHEMY_DATABASE_URI=postgresql://postgres:SecurePassword123!@localhost/hack_dev_tracker
cd client
npm startThe client will be available at http://localhost:3000.
cd server
flask runThe server will run on http://localhost:5000.
client/src: React frontend application.server: Flask backend application.server/models.py: Database models.server/routes.py: API routes.
Navigate to http://localhost:3000 to access the landing page. From there, you can:
- Add new projects and team members using the provided forms.
- Click into individual project pages to manage goals, tasks, and team member assignments.
- View overall progress for each project on the landing page.
To run tests, navigate to the respective directory and use the test command:
npm testpython -m unittestTo contribute to the project:
- Fork the repository.
- Create a new branch for your feature.
- Make changes and test.
- Submit a pull request against the
mainbranch.
For any queries or contributions, please contact the repository maintainer at [email protected]
This project is licensed under the MIT License - see the LICENSE file for details.