Skip to content

devbenho/luka-platform

Repository files navigation

Luka Platform

A modern e-commerce platform built with Go and Next.js, featuring a robust backend API and a responsive frontend interface.

🚀 Features

Backend (Go)

  • RESTful API built with Gin framework
  • MongoDB database integration
  • JWT-based authentication
  • Modular architecture with clean separation of concerns
  • Error handling and validation
  • Docker support for containerization

Frontend (Next.js)

  • Modern React-based UI
  • Tailwind CSS for styling
  • TypeScript for type safety
  • Responsive design

Core Modules

  • User Management
  • Product Catalog
  • Inventory Management
  • Order Processing
  • Warehouse Management
  • Category Management
  • Store Management

🛠️ Technical Stack

Backend

  • Go 1.23
  • Gin Web Framework
  • MongoDB
  • JWT Authentication
  • Docker

Frontend

  • Next.js
  • TypeScript
  • Tailwind CSS
  • React

📦 Getting Started

Prerequisites

  • Go 1.23 or later
  • Node.js 18+ and npm
  • MongoDB
  • Docker (optional)

Installation

  1. Clone the repository
git clone https://github.com/devbenho/luka-platform.git
cd luka-platform
  1. Backend Setup
# Install dependencies
go mod download

# Set up environment variables
cp .env.example .env
# Edit .env with your configuration

# Run the application
go run ./cmd/...
  1. Frontend Setup
cd web
npm install
npm run dev

Docker Setup

docker-compose up

🔍 Project Structure

.
├── cmd/              # Application entry points
├── internal/         # Core application code
│   ├── user/        # User management
│   ├── product/     # Product management
│   ├── orders/      # Order processing
│   ├── inventory/   # Inventory management
│   ├── warehouse/   # Warehouse operations
│   ├── category/    # Category management
│   ├── store/       # Store management
│   └── server/      # Server configuration
├── web/             # Frontend application
├── pkg/             # Shared packages
└── docs/            # Documentation

🎯 Improvements & Future Features

Backend Improvements

  1. Implement comprehensive API documentation using Swagger/OpenAPI
  2. Add rate limiting and request validation
  3. Implement caching layer (Redis)
  4. Add comprehensive logging and monitoring
  5. Implement background job processing
  6. Add more robust error handling and recovery
  7. Implement database migrations
  8. Add unit and integration tests

Frontend Improvements

  1. Implement state management (Redux/Context)
  2. Add comprehensive form validation
  3. Implement proper error boundaries
  4. Add loading states and skeletons
  5. Implement proper authentication flow
  6. Add comprehensive testing
  7. Implement proper SEO optimization
  8. Add PWA support

General Improvements

  1. Implement CI/CD pipeline
  2. Add comprehensive monitoring
  3. Implement proper backup strategy
  4. Add comprehensive security measures
  5. Implement proper documentation
  6. Add performance optimization
  7. Implement proper logging
  8. Add comprehensive analytics

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

👥 Authors

  • Dev Benho - Initial work

🙏 Acknowledgments

  • Thanks to all contributors who have helped shape this project

About

Luka is a dynamic platform designed to help small business owners and artisans showcase and sell their handmade products online. By creating a dedicated online store, Luka enables creators to reach a wider audience while managing inventory, orders, and marketing in one place.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages