8d2efbeb4a6fc06495478a5ec686ce624aba0057
continuous-integration/drone/pr Build is passing
Redesigned account, checkout Added stock management design elements
Midrand Books Ecommerce Platform
An online bookstore web application designed for Midrand Books, allowing local and national customers to browse, search, and purchase books seamlessly.
🚀 Features
- User Authentication: Secure customer registration, login, and profile management.
- Product Catalog: Advanced search, filtering by genre, and dynamic book categorization.
- Shopping Cart: Real-time cart updates, item persistence, and coupon code validation.
- Secure Checkout: Integrated payment gateways supporting local South African methods (e.g., PayFast, Ozow, or Yoco).
- Order Tracking: Automated email confirmations and live delivery status tracking.
- Admin Dashboard: Content management system (CMS) to manage inventory, track sales, and process orders.
🛠️ Tech Stack
- Frontend: Blazor / HTML5 / Bootstrap CSS
- Backend: Blazor Server
- Database: PostgreSQL
- Payment Gateway: PayFast API / PayPal SDK
📋 Prerequisites
Before setting up the project locally, ensure you have the following installed:
- .NET SDK (v6.0 or higher)
- Git
🔧 Installation & Setup
Follow these steps to run the project locally.
-
Clone the repository
git clone https://gitea.khongisa.co.za/litecharms/midrandbooks.git cd midrandbooks -
Install dependencies
# restore NuGet dependencies dotnet restore -
Environment Variables Create a
.envfile in both the frontend and backend roots. Use the.env.examplefiles provided as a reference.DATABASE_URL=your_database_url Email = mailbox settings Monitoring = Aspire dashboard settings PAYMENT_GATEWAY_KEY=your_api_key -
Run the application
# Start app dotnet run -
Access the app Open your browser and navigate to
http://localhost:5000.
📦 Deployment
- Frontend: Hosted on Lite Charms Cloud.
- Backend: Hosted on Lite Charms Cloud.
- Database: Managed on Lite Charms PVC LXC container settings
🤝 Contributing
- Fork the repository.
- Create a feature branch:
git checkout -b feature/NewFeature. - Commit your changes:
git commit -m 'Add NewFeature'. - Push to the branch:
git push origin feature/NewFeature. - Open a Pull Request.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Description
Releases
64
Release 1.68
Latest
Languages
HTML
53.6%
C#
23.1%
CSS
22.3%
JavaScript
0.8%
Dockerfile
0.2%