Files
merchbay_admin/readme.md
Frank John Begornia 246f6b2c0f
All checks were successful
Deploy Development / deploy (push) Successful in 1m20s
Remove outdated deployment and configuration files; consolidate deployment instructions into README and update project structure.
2025-12-18 12:58:56 +08:00

4.5 KiB

MerchBay Admin Panel

A comprehensive administration platform built with Laravel 5.2 for managing e-commerce operations, product catalogs, and customer relationships.

Overview

MerchBay Admin is a web-based administration interface designed to streamline business operations for custom merchandise and sportswear management. The platform provides robust tools for inventory control, order processing, and analytics.

Technology Stack

  • Framework: Laravel 5.2
  • PHP Version: 7.4
  • Web Server: Apache 2.4
  • Database: MySQL
  • Reverse Proxy: Traefik with Let's Encrypt SSL
  • Containerization: Docker & Docker Compose
  • CI/CD: Gitea Actions

Features

  • User authentication and role-based access control
  • Product and inventory management
  • Order processing and tracking
  • Customer relationship management
  • Analytics and reporting dashboard
  • RESTful API endpoints
  • Secure HTTPS communication

Requirements

  • Docker Engine 20.10+
  • Docker Compose 2.0+
  • PHP 7.4 (for local development)
  • Composer 1.x
  • MySQL 5.7+ or MariaDB 10.3+

Quick Start

# Clone the repository
git clone <repository-url>
cd merchbay_admin

# Copy environment file
cp .env.example .env

# Configure your environment variables
vim .env

# Build and start containers
docker-compose up -d

# Install dependencies
docker exec merchbay_admin_app composer install

# Generate application key
docker exec merchbay_admin_app php artisan key:generate

# Run migrations
docker exec merchbay_admin_app php artisan migrate

Local Development

# Install PHP dependencies
composer install

# Copy environment file
cp .env.example .env

# Generate application key
php artisan key:generate

# Configure database in .env file
# Run migrations
php artisan migrate

# Start development server
php artisan serve

Configuration

Environment Variables

Key environment variables to configure:

  • APP_URL - Application URL (e.g., https://admin.merchbay.app)
  • DB_HOST - Database host
  • DB_DATABASE - Database name
  • DB_USERNAME - Database username
  • DB_PASSWORD - Database password

SSL/HTTPS Configuration

The application uses Traefik as a reverse proxy with automatic Let's Encrypt SSL certificates. Ensure your DNS is properly configured and the following Traefik labels are set in docker-compose.yml.

Deployment

This project includes automated CI/CD pipelines via Gitea Actions:

  • Development: Auto-deploys on push to dev branch
  • Production: Auto-deploys on push to main/master branch
  • Manual Builds: Trigger builds with custom tags

Refer to DEPLOYMENT.md and DEPLOYMENT-PORTAINER.md for detailed deployment instructions.

Project Structure

merchbay_admin/
├── app/                    # Application core files
│   ├── Http/              # Controllers, middleware, routes
│   ├── Models/            # Eloquent models
│   └── Providers/         # Service providers
├── config/                # Configuration files
├── database/              # Migrations and seeds
├── public/                # Public assets
├── resources/             # Views, assets, lang files
├── storage/               # Application storage
├── .gitea/workflows/      # CI/CD pipelines
└── docker-compose.yml     # Docker configuration

Development

Running Tests

# Run PHPUnit tests
docker exec merchbay_admin_app vendor/bin/phpunit

# Or locally
./vendor/bin/phpunit

Artisan Commands

# List all available commands
docker exec merchbay_admin_app php artisan list

# Clear application cache
docker exec merchbay_admin_app php artisan cache:clear

# Run database migrations
docker exec merchbay_admin_app php artisan migrate

Security

  • All HTTP traffic is automatically redirected to HTTPS
  • Environment variables are managed securely via .env files
  • SQL injection prevention via Eloquent ORM
  • CSRF protection enabled on all forms
  • XSS protection via Blade templating

For security vulnerabilities, please contact the development team directly.

Documentation

Additional documentation is available:

Support

For issues, questions, or contributions, please contact the development team or open an issue in the repository.

License

This project is proprietary software. All rights reserved.