A comprehensive project management application with Critical Path Method (CPM) and Project Crashing features.
New to programming? Follow our detailed installation guide for non-technical users.
- Enhanced UI Controls: Consistent fullscreen and reset functionality across all diagram components
- Improved User Experience: Standardized button positioning in top-right corner for all diagrams
- Fullscreen Support: Added fullscreen viewing capability to main Network Diagram
- Control Unification: Aligned UI patterns between different diagram components
- Excel Import/Export: Import and export project data using Excel files for both Network Diagram and Project Crashing
- Position Persistence: Node positions in Network Diagram are now preserved across iterations
- Unified UI: Consistent styling across all components for better user experience
- Improved Error Handling: Better validation and error reporting for data imports
- Task Management: Create, edit, and organize project tasks
- Critical Path Analysis: Calculate project critical path
- Network Diagram: Visualize project network using interactive graphs
- Project Crashing: Reduce project duration with cost-effective task crashing
- Calculate optimal task selection for crashing
- Analyze cost impact of crashing activities
- Visualize project paths and critical paths
- Manage multiple crashing iterations
- Data Import/Export: Save and load project data using Excel files
- React
- TypeScript
- Material-UI
- Context API for state management
- Excel integration (XLSX)
# Install dependencies
npm install
# Start development server
npm start
# Build for production
npm run build/src/components: UI components/src/hooks: Context providers and custom hooks/src/models: TypeScript interfaces and models/src/services: Business logic and algorithms
The project includes a complete implementation of the Project Crashing algorithm, which helps determine how to shorten project duration while minimizing costs. It includes:
- Input of normal and crash parameters for tasks
- Calculation of cost-slope values
- Identification of critical paths
- Step-by-step crashing process
- Cost analysis for each crashing iteration
- Import/export functionality with Excel
- Frontend:
- React (v18.x) with TypeScript
- Material UI (MUI) v5 for UI components and styling
- React Flow (v11.x) for network diagram visualization
- @dnd-kit for accessible and performant drag-and-drop
- Development:
- Create React App (react-scripts v5.x)
- ESLint for code linting
Before you begin, ensure you have the following installed:
Once the dependencies are installed, you can start the development server:
Using npm:
npm startOr using Yarn:
yarn startThis will run the app in development mode. Open http://localhost:3000 to view it in your browser. The page will reload if you make edits.
In the project directory, you can run:
npm startoryarn start: Runs the app in development mode.npm run buildoryarn build: Builds the app for production to thebuildfolder.npm testoryarn test: Launches the test runner in interactive watch mode.npm run ejectoryarn eject: Removes the single dependency configuration (Create React App'sreact-scripts). Note: this is a one-way operation. Once youeject, you can't go back!
This project is licensed under the MIT License. See the LICENSE file for details.
- v1.1.2 - : Enhanced diagram controls with consistent UI patterns and fullscreen capability
- v1.1.1 - : Added Excel import/export, position persistence, unified UI styling
- v1.1.0 - : Enhanced UI/UX, performance improvements, bug fixes, improved crashing algorithm
- v1.0.0 - : Initial release with basic CPM and Project Crashing features
Happy Project Managing!