Go to file
ats-tech25 baa7747583 chore(docker): Disable default port exposure and health check in Dockerfile
- Comment out default port exposure (EXPOSE 8080)
- Disable default health check command
- Prepare Dockerfile for more flexible container configuration
- Allows for custom port mapping and health check strategies at runtime
2025-11-07 22:17:23 +00:00
.vscode docs(api comprehensive API documentation for attune Heart Therapy 2025-11-07 19:22:46 +00:00
cmd feat(app): Implement comprehensive application lifecycle management 2025-11-07 19:22:26 +00:00
docs docs(api comprehensive API documentation for attune Heart Therapy 2025-11-07 19:22:46 +00:00
internal refactor(cli): Update admin CLI service initialization with Jitsi integration 2025-11-07 20:55:52 +00:00
.dockerignore chore(docker): Add Docker and development configuration files 2025-11-07 20:54:18 +00:00
.env.example chore(docker): Add Docker and development configuration files 2025-11-07 20:54:18 +00:00
.gitignore chore(docker): Add Docker and development configuration files 2025-11-07 20:54:18 +00:00
brainstorm.md docs(brainstorm): Update payment method from PayPal to Stripe 2025-11-05 14:33:46 +00:00
docker-compose.yml chore(docker): Add Docker and development configuration files 2025-11-07 20:54:18 +00:00
Dockerfile chore(docker): Disable default port exposure and health check in Dockerfile 2025-11-07 22:17:23 +00:00
go.mod chore(dependencies): Update project dependencies and middleware packages 2025-11-06 09:31:51 +00:00
go.sum chore(dependencies): Update project dependencies and middleware packages 2025-11-06 09:31:51 +00:00
README.md feat(project): Initialize project structure and core components 2025-11-05 15:06:07 +00:00

Video Conference Booking System

A Go-based backend service for booking video conference meetings with Stripe payment integration and Jitsi Meet video conferencing.

Features

  • User registration and authentication
  • Meeting booking with payment processing
  • Jitsi Meet integration for video conferences
  • Email notifications via SMTP
  • Admin dashboard for system management
  • CLI tools for admin operations

Project Structure

├── cmd/
│   ├── server/          # HTTP server entry point
│   └── cli/             # CLI tools entry point
├── internal/
│   ├── config/          # Configuration management
│   ├── server/          # HTTP server setup
│   ├── cli/             # CLI commands
│   ├── models/          # Database models
│   ├── services/        # Business logic layer
│   ├── repositories/    # Data access layer
│   ├── handlers/        # HTTP handlers
│   └── middleware/      # HTTP middleware
├── bin/                 # Compiled binaries
├── .env.example         # Environment variables template
├── Makefile            # Development commands
└── README.md           # This file

Prerequisites

  • Go 1.21 or higher
  • PostgreSQL database
  • Stripe account (for payments)
  • SMTP server (for email notifications)

Setup

  1. Clone the repository
  2. Copy environment variables:
    cp .env.example .env
    
  3. Update .env with your configuration
  4. Install dependencies:
    make deps
    
  5. Build the application:
    make build
    

Running the Application

HTTP Server

make run
# or
./bin/server

CLI Tools

make cli
# or
./bin/cli

Development

  • make build - Build server binary
  • make build-cli - Build CLI binary
  • make run - Run the server
  • make test - Run tests
  • make fmt - Format code
  • make vet - Vet code
  • make clean - Clean build artifacts

API Endpoints

The server will start on http://localhost:8080 by default.

  • GET /health - Health check
  • POST /api/v1/auth/register - User registration
  • POST /api/v1/auth/login - User login
  • GET /api/v1/bookings - Get user bookings
  • POST /api/v1/bookings - Create booking
  • GET /api/v1/schedules - Get available slots
  • POST /api/v1/payments/intent - Create payment intent
  • GET /api/v1/admin/dashboard - Admin dashboard

Environment Variables

See .env.example for all required environment variables.

License

This project is proprietary software.