MCT Dashboard is a Flask-based web application designed to help individuals and small teams manage projects effectively through a hierarchical structure:
- Projects → Top-level containers for your work
- Milestones → Major phases within projects
- Checkpoints → Specific deliverables or verification points
- Tasks → Individual work items to be completed
The system emphasizes simplicity and effectiveness for personal and small-scale projects, providing just enough structure without overwhelming complexity.
- Hierarchical Project Structure: Organize work from high-level projects down to individual tasks
- Dependency Management: Set conditions between tasks to manage workflow requirements
- Problem Tracking: Document and track issues at any level of your projects
- Markdown Document Support: Create and share project documentation with markdown formatting
- Cost Tracking: Monitor estimated costs at all levels of your projects
- Team Collaboration: Share notes and assign tasks to team members
- Personal Notes: Keep private notes for your own reference
- Dashboard Analytics: Get visual insights into project progress and status
- Search Functionality: Quickly find tasks and problems using codes or text search
- Responsive Design: Access your projects from desktop or mobile devices
- Backend: Python with Flask framework
- Database: SQLAlchemy ORM (supports SQLite by default, configurable for other databases)
- Frontend: Bootstrap 5, Chart.js for visualizations, FontAwesome for icons
- Authentication: Flask-Login for user management
- Python 3.7+
- pip (Python package manager)
- Git (optional, for cloning the repository)
- Clone the repository
git clone https://github.com/yourusername/mct-dashboard.git
cd mct-dashboard- Create and activate a virtual environment
python -m venv venv
# On Windows
venv\Scripts\activate
# On macOS/Linux
source venv/bin/activate- Install dependencies
pip install -r requirements.txt- Initialize the database
flask init-db- Run the development server
python run.pyThe application will be available at http://localhost:5000. Default login credentials are:
- Username:
admin - Password:
admin
mct-dashboard/
├── app/ # Application package
│ ├── blueprints/ # View functions organized by feature
│ ├── forms/ # Form definitions
│ ├── models/ # Database models
│ ├── static/ # Static assets (CSS, JS, images)
│ ├── templates/ # HTML templates
│ ├── utils/ # Utility functions
│ ├── __init__.py # Application factory
│ ├── config.py # Configuration settings
│ └── extensions.py # Flask extensions
├── uploads/ # Uploaded files
├── requirements.txt # Python dependencies
├── run.py # Application entry point
└── README.md # This file
The basic workflow in MCT Dashboard follows this hierarchy:
- Create a Project with basic information
- Add Milestones to define major phases
- Define Checkpoints within each milestone
- Create Tasks that make up each checkpoint
- Track Problems at any level when issues arise
Progress and completion are automatically calculated upwards through the hierarchy as tasks are completed.
Configuration options are defined in app/config.py. The most common settings to change are:
SECRET_KEY: Set a secure random string in productionSQLALCHEMY_DATABASE_URI: Database connection stringUPLOAD_FOLDER: Location for document uploadsMAX_CONTENT_LENGTH: Maximum upload size
For production deployment, create a ProductionConfig with secure settings.
- Email notifications for task assignments and updates
- Calendar integration for timeline visualization
- File attachment support for tasks and problems
- API endpoints for integration with other tools
- Custom dashboard widgets
- Advanced reporting and export options
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Project Link: https://github.com/yourusername/mct-dashboard
Built with ❤️ for better project management