https://github.com/0xcryptoangel/bookingapp-dotnet-angular
A full-stack web application for booking and managing resources, built with ASP.NET Core and Angular, offering real-time availability, user authentication, and admin dashboards for streamlined scheduling and oversight.
https://github.com/0xcryptoangel/bookingapp-dotnet-angular
angular asp-net-core asp-net-core-web-api asp-net-mvc csharp entity-framework-core jwt-token karma-jasmine moq ms-sql-server repository-pattern swagger xunit
Last synced: 3 months ago
JSON representation
A full-stack web application for booking and managing resources, built with ASP.NET Core and Angular, offering real-time availability, user authentication, and admin dashboards for streamlined scheduling and oversight.
- Host: GitHub
- URL: https://github.com/0xcryptoangel/bookingapp-dotnet-angular
- Owner: 0xCryptoAngel
- Created: 2025-07-18T08:24:45.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-07-18T08:59:21.000Z (3 months ago)
- Last Synced: 2025-07-18T12:41:55.605Z (3 months ago)
- Topics: angular, asp-net-core, asp-net-core-web-api, asp-net-mvc, csharp, entity-framework-core, jwt-token, karma-jasmine, moq, ms-sql-server, repository-pattern, swagger, xunit
- Language: C#
- Homepage:
- Size: 671 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# BookingApp
## 📝 Description
A web-based client-server system for booking or renting any type of resource. The system provides:
- A tree-view of all available resources
- Calendar-based availability
- Resource-specific booking rules
- User authentication
- Booking managementBusiness owners are given a full set of administrative features including statistics, user access management, and booking oversight.
---
## 🛠️ Technologies & Methodologies
**Frontend:**
- Angular 5
- Bootstrap
- Karma & Jasmine (unit testing)**Backend:**
- C#, ASP.NET Core MVC
- ASP.NET Core Identity
- Entity Framework Core
- Repository Pattern
- Swagger for API documentation
- AutoMapper
- JWT Authentication
- SQL Server & Stored Procedures**DevOps & Project Management:**
- Azure DevOps
- Git (version control)
- Agile Development Methodology---
## 👨💻 Responsibilities
- Designed and implemented database and entity models
- Developed generic repository base classes
- Created booking logic and occupancy tracking
- Built authentication with JWT and ASP.NET Identity
- Integrated Angular frontend with RESTful backend APIs
- Wrote and maintained unit and integration tests using Moq and xUnit
- Used Swagger for documenting APIs
- Designed UI/UX in Angular with Bootstrap---
## 🚀 Getting Started
### Prerequisites
- [.NET SDK](https://dotnet.microsoft.com/download)
- [Node.js + npm](https://nodejs.org)
- [SQL Server](https://www.microsoft.com/en-us/sql-server)
- Angular CLI### Setup Steps
1. Clone the repo:
```bash
git clone https://github.com/your-username/BookingApp.git
cd BookingApp
```2. Set up the database:
- Update connection string in `appsettings.json`
- Run database migrations or SQL scripts manually3. Run the backend:
```bash
cd BookingApp
dotnet run
```4. Run the frontend:
```bash
cd BookingApp/ClientApp
npm install
ng serve
```The app will be available at: `http://localhost:4200`
---
## 📦 Project Structure
```
BookingApp-DotNet-Angular-main/
├── BookingApp/ # Main ASP.NET Core project
│ ├── Controllers/
│ ├── Models/
│ ├── Data/
│ ├── Services/
│ └── ClientApp/ # Angular frontend
├── BookingAppTests/ # Unit tests
├── BookingAppIntegrationTests/
├── BookingApp.sln # Solution file
└── README.md
```---
## ✅ Testing
Run backend tests:
```bash
dotnet test
```Run Angular tests:
```bash
cd BookingApp/ClientApp
ng test
```---
## 📄 License
This project is licensed under the MIT License.
---