White Lagoon is a resort booking website that allows users to reserve villas for specific durations. The system supports two user roles: Admin and Customer. Admins can manage villa listings and amenities, while Customers can browse available villas, register for an account, and make bookings with integrated Stripe payment.
-
Customer:
- Register & login
- View available villas
- Book villas for specific nights
-
Admin:
- Create, Read, Update, and Delete villas
- Manage amenities associated with each villa
Role management is handled using ASP.NET Core Identity.
- Stripe is used to securely handle customer payments.
- Backend: ASP.NET Core MVC
- Frontend: Razor Views, HTML, CSS, JavaScript, jQuery Validation
- Database: SQL Server
- ORM: Entity Framework Core
- Authentication: ASP.NET Core Identity
- Architecture: Clean Architecture + Repository Pattern
- Payment: Stripe
To run this project locally:
- Clone the repository.
- Create a
appsettings.json
file in the web project and add the following content:
{
"ConnectionStrings": {
"DefaultConnection": "Your_Database_Connection_String"
},
"Stripe": {
"SecretKey": "Stripe_Secret_Key",
"PublishableKey": "Stripe_Publishable_Key"
}
}
You need to create a Stripe account to obtain the API keys.
- Run the project using Visual Studio or
dotnet run
from the terminal.