Fahrzeugverwaltung is a comprehensive vehicle management system designed to streamline vehicle reservations and administrative workflows. Built with ASP.NET 8 and Angular, this application ensures efficient vehicle utilization, approval processes, and user notifications.
- 🚗 Reserve Vehicles: Book a vehicle for a specific timespan.
- ⏳ Customizable Restrictions:
- Minimum/maximum reservation duration.
- Minimum/maximum amount of days in advance for reservations.
- Prevent overlapping reservations.
- ✔️ Reservation Approval: Admins or designated groups can accept or decline reservation requests.
- 🔔 Email Alerts: Receive notifications for new reservations and status changes.
- 📄 Invite New Users:
- Send an all-in-one PDF document containing the reservation code, instructions (Anleitung), QR code, and more for easy onboarding.
- ⚙️ Customize Notifications:
- Change settings to receive emails only from selected organizations.
- 📱 Mobile-App: Make the frontend a PWA
- 🔔 Advanced Notifications: SignalR-Messaging to the frontend and the PWA
- 📊 Statistics: Provide usage-statistics and trends for administrators
- 🛠 Setup: Guide the user through the setup process
These features will be implemented after I complete my bachelor thesis. In my thesis I am evaluating event-driven microservice-architecture using the RabbitMQ Eventbroker. Checkout the "BA" branch!
- ASP.NET 8: Core API development framework.
- FastEndpoints: High-performance, RESTful endpoint creation.
- Entity Framework Core: Seamless database operations.
- MassTransit: Streamlined asynchronous messaging.
- Swagger: Interactive API documentation and testing.
- QuestPDF: Generate professional PDF documents for user invitations.
- Angular: Clean, user-friendly interface.
- Client Code Generation: Automatically generate Angular services for backend integration.
- Docker: Containerization for easy deployment and scalability.
- .NET 8 SDK
- Node.js (v16+)
- Docker
- Execute the docker file which sets up:
- MySQL Database
- Keycloak
cd docker
docker compose up -d
- Navigate to the backend directory:
cd .\Backend
- Build the Docker image:
docker build -t fahrzeugverwaltung-backend .
-
Navigate to the frontend directory:
cd ../Frontend
-
Build the docker image:
docker build -t fahrzeugverwaltung-frontend .
Contributions and suggestions are welcome! Please use the GitHub issue tracker to report bugs or request features.