A modern, interactive project management web application built with vanilla HTML, CSS, and JavaScript using MVC architecture. Perfect for managing game jam projects and other collaborative tasks.
- Kanban Board: Drag-and-drop task management with columns (To Do, In Progress, Review, Done)
- Gantt Chart: Visual timeline view with zoom controls and date navigation
- List View: Detailed table view with search and sorting capabilities
- Team View: Organize tasks by team members
- Create and manage multiple projects
- Project wizard for quick setup with predefined game jam tasks
- Project import/export to
.mrprojectfiles - Local storage persistence (no backend required)
- Edit and delete projects
- Create tasks with detailed information:
- Name, description, status, priority
- Start and end dates
- Progress tracking (0-100%)
- User assignment
- Parent-child task relationships
- Drag-and-drop task movement between statuses
- Task search and filtering
- Multiple sorting options
- Add and manage team members
- Assign tasks to users
- View tasks by team member
- Automatic local storage saving
- Export projects to
.mrprojectfiles - Import projects from
.mrprojectfiles - Backup and recovery functionality
- Clone or download this repository
- Open
index.htmlin a modern web browser - No build process or dependencies required!
-
Create a New Project:
- Click the "✨ New Project" button
- Use the project wizard to quickly set up a game jam project
- Or create a custom project manually
-
Manage Tasks:
- Click the "➕" button in any Kanban column to add a task
- Click on a task to edit it
- Drag tasks between columns to change status
- Use the List view for detailed task management
-
Switch Views:
- Use the tab buttons at the top to switch between Kanban, Gantt, List, and Team views
-
Manage Users:
- Click "👥 User Management" to add team members
- Assign tasks to users in the task modal
-
Backup & Recovery:
- Click "📤 Backup" to export your project
- Click "📥 Recover" to import a previously exported project
MRSimpleProjectManagerWeb/
├── index.html # Main HTML file
├── styles.css # Application styles
├── app.js # Main application controller
├── models/ # Data models
│ ├── DataStore.js # Local storage and data management
│ ├── Project.js # Project model
│ ├── Task.js # Task model
│ └── User.js # User model
├── views/ # View components
│ ├── ProjectListView.js # Project selector view
│ ├── KanbanView.js # Kanban board view
│ ├── GanttView.js # Gantt chart view
│ ├── ListView.js # List/table view
│ ├── TeamView.js # Team member view
│ └── UsersView.js # User management view
└── controllers/ # Controllers (MVC pattern)
├── ModalController.js # Modal management
├── ProjectController.js # Project operations
├── ProjectWizardController.js # Project wizard
├── TaskController.js # Task operations
└── UserController.js # User operations
This application follows the MVC (Model-View-Controller) pattern:
- Models: Data structures and business logic (
models/) - Views: UI rendering components (
views/) - Controllers: Handle user interactions and coordinate between models and views (
controllers/)
- DataStore: Manages all data persistence using localStorage
- Views: Render different visualizations of the same data
- Controllers: Handle user actions and update models/views accordingly
- Modals: All user input is handled through modal dialogs (no popups)
- Modern UI: Clean, intuitive interface with smooth interactions
- Emoji Icons: Fun and expressive emoji-based icons throughout
- Responsive: Optimized for 1200x1024 resolution
- Interactive: Drag-and-drop, smooth transitions, and real-time updates
- No Popups: All interactions use modal dialogs for a better UX
- HTML5: Semantic markup
- CSS3: Modern styling with flexbox and grid
- Vanilla JavaScript: No frameworks or dependencies
- LocalStorage API: Client-side data persistence
- File API: Import/export functionality
Projects are exported as .mrproject files, which are JSON files containing:
- Project information (name, description, dates)
- All tasks with their properties
- All users/team members
- Relationships between tasks
Works best in modern browsers that support:
- ES6 JavaScript features
- LocalStorage API
- File API
- Drag and Drop API