https://github.com/wloescher/lcms
Full stack web application - SQL, C#, Blazor
https://github.com/wloescher/lcms
blazor-server bootstrap entity-framework-core full-stack-web-development net-core-8
Last synced: about 2 months ago
JSON representation
Full stack web application - SQL, C#, Blazor
- Host: GitHub
- URL: https://github.com/wloescher/lcms
- Owner: wloescher
- License: mit
- Created: 2025-04-01T23:47:48.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-04-25T06:42:45.000Z (about 1 year ago)
- Last Synced: 2025-08-06T15:09:47.726Z (11 months ago)
- Topics: blazor-server, bootstrap, entity-framework-core, full-stack-web-development, net-core-8
- Language: C#
- Homepage:
- Size: 2.49 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# LCMS - Legal Case Management System
Web application that enables attorneys to manage legal cases, associate clients and documents, and schedule court appearances.
- [x] Blazor Server
- [x] C# / .NET 8 (Core)
- [x] EF Core Power Tools
- [x] Entity Framework
- [x] SQL Express
- [x] Responsive Design (Bootstrap)
---
## Setup ##
1. Run the db script file "lcms-create-db.sql" to create the SQL database.
2. Right click on the Presentation/LCMS.Blazor project and select "Set as Startup Project".
3. To launch the application, hit F5 or selected Debug > Start Debugging.
4. When you run the app for the first time, the database will be populated with sample data.
5. To log in, choose any of the following username / password combos:
- admin / admin (Full Access)
- attorney / attorney (Limited Access)
- paralegal / paralegal (Limited Access)
### Cases ###
| Feature | Admin | Attorney | Paralegal | Complete |
|----------------------|-----------------|---------------|------------------|-------------|
| View Cases | ✓ | ✓ | ✓ | ✓ |
| Search Cases | ✓ | ✓ | ✓ | ✗ |
| Add Case | ✓ | ✓ | ✓ | ✗ |
| Edit Case | ✓ | ✓ | ✓ | ✗ |
| Delete Case | ✓ | ✗ | ✗ | ✗ |
| View Case Comments | ✓ | ✓ | ✓ | ✓ |
| Add Case Comment | ✓ | ✓ | ✓ | ✗ |
| Edit Case Comment | ✓ | ✓ | ✓ | ✗ |
| Delete Case Comment | ✓ | ✗ | ✗ | ✗ |
| View Case Documents | ✓ | ✓ | ✓ | ✓ |
| Add Case Document | ✓ | ✓ | ✓ | ✗ |
| Upload Case Document | ✓ | ✓ | ✓ | ✗ |
| Edit Case Document | ✓ | ✓ | ✓ | ✗ |
| Delete Case Document | ✓ | ✗ | ✗ | ✗ |
| View Case Notes | ✓ | ✓ | ✓ | ✓ |
| Add Case Note | ✓ | ✓ | ✓ | ✗ |
| Edit Case Note | ✓ | ✓ | ✓ | ✗ |
| Delete Case Note | ✓ | ✗ | ✗ | ✗ |
| View Case Users | ✓ | ✓ | ✓ | ✓ |
| Add Case User | ✓ | ✓ | ✓ | ✗ |
| Delete Case User | ✓ | ✗ | ✗ | ✗ |
### Clients ###
| Feature | Admin | Attorney | Paralegal | Complete |
|----------------------|-----------------|---------------|------------------|-------------|
| View Clients | ✓ | ✓ | ✓ | ✓ |
| Search Clients | ✓ | ✓ | ✓ | ✗ |
| Add Client | ✓ | ✓ | ✓ | ✗ |
| Edit Client | ✓ | ✓ | ✓ | ✗ |
| Delete Client | ✓ | ✗ | ✗ | ✗ |
### Users ###
| Feature | Admin | Attorney | Paralegal | Complete |
|----------------------|-----------------|---------------|------------------|-------------|
| View Users | ✓ | ✓ | ✓ | ✓ |
| Add User | ✓ | ✗ | ✗ | ✗ |
| Edit User | ✓ | ✗ | ✗ | ✗ |
| Delete User | ✓ | ✗ | ✗ | ✗ |
| View User Accounts | ✓ | ✗ | ✗ | ✓ |
| Add User Account | ✓ | ✗ | ✗ | ✗ |
| Edit User Account | ✓ | ✗ | ✗ | ✗ |
| Delete User Account | ✓ | ✗ | ✗ | ✗ |
### Misc. ###
| Feature | Admin | Attorney | Paralegal | Complete |
|----------------------|-----------------|---------------|------------------|-------------|
| Login / Logout | ✓ | ✓ | ✓ | ✓ |
| View Reports | ✓ | ✓ | ✓ | ✗ |
| Add Court Dates | ✓ | ✓ | ✓ | ✗ |
| Edit Court Dates | ✓ | ✓ | ✓ | ✗ |
| Delete Court Dates | ✓ | ✓ | ✓ | ✗ |
---
## Key Requirements ##
### 1. Authentication & Authorization ###
- [x] Implement user authentication with login/logout functionality.
- [x] Use role-based authorization (e.g., Admin, Attorney, Paralegal).
### 2. Core Features ###
#### 2.1 Case Management ####
- [x] Create, edit, and delete cases.
- [x] Associate cases with clients and attorneys.
- [x] Track case status (e.g., Open, Closed, In Progress).
- [x] Assign a case type (e.g., Criminal, Civil, Family Law).
#### 2.2 Client Management ####
- [x] Add, edit, and delete clients.
- [x] Store client contact details.
- [x] Associate clients with one or multiple cases.
#### 2.3 Document Management ####
- [ ] Upload, view, and delete case-related documents.
- [x] Associate documents with specific cases.
- [x] Display metadata (e.g., uploaded by, date uploaded).
#### 2.4 Notes & Communications ####
- [x] Attorneys can add case notes.
- [x] Support an internal commenting system on cases.
### 3. UI & User Experience ###
- [x] Implement responsive design for desktop and mobile.
- [x] Use data grids for case, client, and document listings.
### 4. Data Storage & Access ###
- [x] Use Entity Framework Core with a SQL database.
- [x] Implement repository pattern for data access.
- [x] Use Blazor’s dependency injection for services.
### 5. Reporting & Search ###
- [ ] Implement a search functionality for cases and clients.
- [ ] Generate basic reports (e.g., open cases, upcoming court dates).