Skip to content

SrikharD/Construction-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

13 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Construction Management System

A modern, professional ASP.NET Core 9.0 web application for managing construction projects, sites, workers, and work orders with a sleek black and white design theme.

🎯 Overview

The Construction Management System (CMS) is a comprehensive solution for managing construction projects with features including:

  • Project Site Management - Create and manage construction sites
  • Worker Management - Track site workers and their availability
  • Work Order System - Assign and track work orders
  • Owner Management - Manage current property owners
  • History Tracking - Complete audit trail of all changes
  • Role-Based Access Control - Admin and User roles with different permissions

πŸš€ Quick Start

Prerequisites

  • .NET 9.0 SDK or later
  • SQL Server LocalDB (included with Visual Studio)
  • Visual Studio 2022 or Visual Studio Code
  • Git for version control

Installation

  1. Clone the Repository

    git clone https://github.com/SrikharD/Construction-Management-System.git
    cd Construction-Management-System
  2. Navigate to Project Directory

    cd "Construction Management System"
  3. Restore Dependencies

    dotnet restore
  4. Apply Database Migrations

    dotnet ef database update
  5. Run the Application

    dotnet run
  6. Access the Application

    • Open your browser and navigate to: https://localhost:5001
    • Or: http://localhost:5000

Default Credentials

Role Email Password
Admin admin@admin.com Password1!
User user@demo.com Password1!

πŸ“ Project Structure

Construction Management System/
β”œβ”€β”€ Areas/                          # ASP.NET Core Identity areas
β”‚   └── Identity/                   # Authentication & Authorization
β”œβ”€β”€ Controllers/                    # MVC Controllers (6 total)
β”‚   β”œβ”€β”€ HomeController.cs
β”‚   β”œβ”€β”€ ProjectSitesController.cs
β”‚   β”œβ”€β”€ WorkOrdersController.cs
β”‚   β”œβ”€β”€ SiteWorkersController.cs
β”‚   β”œβ”€β”€ CurrentOwnersController.cs
β”‚   └── HistoryController.cs
β”œβ”€β”€ Models/                         # Data Models (7 total)
β”‚   β”œβ”€β”€ ProjectSite.cs
β”‚   β”œβ”€β”€ WorkOrder.cs
β”‚   β”œβ”€β”€ SiteWorker.cs
β”‚   β”œβ”€β”€ CurrentOwner.cs
β”‚   β”œβ”€β”€ WorkAllocation.cs
β”‚   β”œβ”€β”€ Person.cs
β”‚   └── ErrorViewModel.cs
β”œβ”€β”€ Data/                           # Database Context & Migrations
β”‚   β”œβ”€β”€ ApplicationDbContext.cs
β”‚   └── Migrations/
β”œβ”€β”€ Views/                          # Razor Templates
β”‚   β”œβ”€β”€ Home/
β”‚   β”œβ”€β”€ ProjectSites/
β”‚   β”œβ”€β”€ WorkOrders/
β”‚   β”œβ”€β”€ SiteWorkers/
β”‚   β”œβ”€β”€ CurrentOwners/
β”‚   β”œβ”€β”€ History/
β”‚   └── Shared/
β”œβ”€β”€ ViewModels/                     # View-specific Models
β”œβ”€β”€ wwwroot/                        # Static Files
β”‚   β”œβ”€β”€ css/                        # Stylesheets
β”‚   β”œβ”€β”€ js/                         # JavaScript
β”‚   β”œβ”€β”€ lib/                        # Libraries (Bootstrap, jQuery)
β”‚   └── favicon.ico
β”œβ”€β”€ docs/                           # Documentation
β”‚   β”œβ”€β”€ setup/                      # Setup guides
β”‚   β”œβ”€β”€ features/                   # Feature documentation
β”‚   β”œβ”€β”€ fixes/                      # Bug fixes & improvements
β”‚   β”œβ”€β”€ guides/                     # Implementation guides
β”‚   └── reference/                  # Quick references
β”œβ”€β”€ Properties/                     # Project Properties
β”œβ”€β”€ Program.cs                      # Application Entry Point
β”œβ”€β”€ appsettings.json               # Configuration
β”œβ”€β”€ appsettings.Development.json   # Development Configuration
└── ConstructionMS.csproj          # Project File

✨ Key Features

🎨 Modern Design

  • Professional black and white theme with accent blue
  • Responsive design for desktop, tablet, and mobile
  • Smooth animations and transitions
  • Color-coded status indicators

🧭 Navigation

  • Modern sidebar menu with icons
  • Responsive navbar with user menu
  • Breadcrumb navigation
  • Quick access cards on dashboard

πŸ“Š Dashboard

  • Welcome section with user information
  • Quick access cards (4-column grid)
  • Role-based badges
  • System information panel

πŸ” Security

  • ASP.NET Core Identity integration
  • Role-based access control (Admin/User)
  • Password hashing and validation
  • Secure session management

πŸ“± Responsive Design

  • Mobile-first approach
  • Bootstrap 5 framework
  • Touch-friendly interface
  • Optimized for all screen sizes

πŸ› οΈ Technology Stack

Technology Version Purpose
ASP.NET Core 9.0 Web Framework
Entity Framework Core 9.0 ORM
SQL Server LocalDB Database
Bootstrap 5.3 CSS Framework
jQuery 3.6 JavaScript Library
Bootstrap Icons 1.11 Icon Library

πŸ“š Documentation

Comprehensive documentation is available in the /docs folder:

πŸ”§ Configuration

appsettings.json

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=ConstructionMS;Trusted_Connection=true;"
  },
  "Logging": {
    "LogLevel": {
      "Default": "Information"
    }
  }
}

Database Connection

The application uses SQL Server LocalDB by default. To use a different database:

  1. Update the connection string in appsettings.json
  2. Run migrations: dotnet ef database update

πŸ§ͺ Testing

To run the application in development mode:

dotnet run --configuration Debug

To build in Release mode:

dotnet build --configuration Release

πŸš€ Deployment

Local Deployment

dotnet publish --configuration Release

Production Deployment

  1. Build in Release mode
  2. Publish to hosting environment
  3. Update connection strings for production database
  4. Run migrations on production database
  5. Configure SSL certificates
  6. Set appropriate environment variables

πŸ“ License

This project is part of the Construction Management System course project.

πŸŽ“ Version History

Version Date Status
1.0 October 17, 2025 Released

Last Updated: October 17, 2025

For the latest updates and documentation, visit the GitHub Repository.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors