help@rskworld.in +91 93305 39277
RSK World
  • Home
  • Development
    • Web Development
    • Mobile Apps
    • Software
    • Games
    • Project
  • Technologies
    • Data Science
    • AI Development
    • Cloud Development
    • Blockchain
    • Cyber Security
    • Dev Tools
    • Testing Tools
  • About
  • Contact

Theme Settings

Color Scheme
Display Options
Font Size
100%
Back to Project
RSK World
go-rest-api
RSK World
go-rest-api
Go REST API - Enterprise-grade REST API with JWT Authentication + PostgreSQL + Redis Caching + Docker + Comprehensive Testing + Educational Design
go-rest-api
  • cmd
  • docs
  • internal
  • tests
  • .env506 B
  • .gitignore323 B
  • Dockerfile975 B
  • LICENSE1.2 KB
  • Makefile710 B
  • README.md7.9 KB
  • RELEASE_NOTES.md6.4 KB
  • docker-compose.yml1 KB
  • go.mod447 B
  • index.html27.8 KB
index.html.env
index.html
Raw Download
Find: Go to:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Go REST API - Complete Demo & Documentation</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            line-height: 1.6;
            color: #333;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
        }

        .container {
            max-width: 1200px;
            margin: 0 auto;
            padding: 20px;
        }

        .header {
            text-align: center;
            color: white;
            padding: 60px 20px;
            background: rgba(255, 255, 255, 0.1);
            border-radius: 15px;
            margin-bottom: 30px;
            backdrop-filter: blur(10px);
        }

        .header h1 {
            font-size: 3em;
            margin-bottom: 10px;
            text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
        }

        .header p {
            font-size: 1.2em;
            opacity: 0.9;
        }

        .badge {
            display: inline-block;
            background: #ff6b6b;
            color: white;
            padding: 5px 15px;
            border-radius: 20px;
            font-size: 0.9em;
            margin: 5px;
        }

        .section {
            background: white;
            margin: 30px 0;
            padding: 40px;
            border-radius: 15px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.1);
        }

        .section h2 {
            color: #2c3e50;
            border-bottom: 3px solid #3498db;
            padding-bottom: 10px;
            margin-bottom: 25px;
            font-size: 2em;
        }

        .section h3 {
            color: #34495e;
            margin: 25px 0 15px 0;
            font-size: 1.5em;
        }

        .file-tree {
            background: #f8f9fa;
            border: 1px solid #e9ecef;
            border-radius: 8px;
            padding: 20px;
            font-family: 'Courier New', monospace;
            font-size: 14px;
            overflow-x: auto;
        }

        .file-tree .folder {
            color: #007bff;
            font-weight: bold;
        }

        .file-tree .file {
            color: #28a745;
            margin-left: 20px;
        }

        .file-tree .description {
            color: #6c757d;
            font-style: italic;
            margin-left: 40px;
        }

        .code-block {
            background: #2d3748;
            color: #e2e8f0;
            padding: 20px;
            border-radius: 8px;
            margin: 15px 0;
            overflow-x: auto;
            font-family: 'Courier New', monospace;
            font-size: 14px;
        }

        .endpoint {
            background: #f8f9fa;
            border-left: 4px solid #007bff;
            padding: 15px;
            margin: 10px 0;
            border-radius: 0 8px 8px 0;
        }

        .endpoint .method {
            font-weight: bold;
            color: #007bff;
            margin-right: 10px;
        }

        .endpoint .path {
            font-family: 'Courier New', monospace;
            color: #495057;
        }

        .feature-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 20px;
            margin: 20px 0;
        }

        .feature-card {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            padding: 25px;
            border-radius: 12px;
            text-align: center;
            transition: transform 0.3s ease;
        }

        .feature-card:hover {
            transform: translateY(-5px);
        }

        .feature-card h4 {
            margin-bottom: 10px;
            font-size: 1.2em;
        }

        .feature-card p {
            opacity: 0.9;
            font-size: 0.9em;
        }

        .step {
            background: #e3f2fd;
            border-left: 4px solid #2196f3;
            padding: 20px;
            margin: 15px 0;
            border-radius: 0 8px 8px 0;
        }

        .step-number {
            display: inline-block;
            background: #2196f3;
            color: white;
            width: 30px;
            height: 30px;
            border-radius: 50%;
            text-align: center;
            line-height: 30px;
            margin-right: 15px;
            font-weight: bold;
        }

        .highlight {
            background: #fff3cd;
            border: 1px solid #ffeaa7;
            padding: 15px;
            border-radius: 8px;
            margin: 15px 0;
        }

        .footer {
            text-align: center;
            color: white;
            padding: 40px 20px;
            background: rgba(0,0,0,0.2);
            border-radius: 15px;
            margin-top: 30px;
        }

        .social-links {
            margin: 20px 0;
        }

        .social-links a {
            display: inline-block;
            color: white;
            margin: 0 15px;
            text-decoration: none;
            padding: 10px 20px;
            border: 2px solid white;
            border-radius: 25px;
            transition: all 0.3s ease;
        }

        .social-links a:hover {
            background: white;
            color: #667eea;
        }

        @media (max-width: 768px) {
            .header h1 {
                font-size: 2em;
            }

            .container {
                padding: 10px;
            }

            .section {
                padding: 20px;
            }

            .feature-grid {
                grid-template-columns: 1fr;
            }
        }
    </style>
</head>
<body>
    <div class="container">
        <!-- Header Section -->
        <div class="header">
            <h1>๐Ÿš€ Go REST API</h1>
            <p>Complete Enterprise-Grade REST API with Advanced Features</p>
            <div class="badges">
                <span class="badge">v1.0.0</span>
                <span class="badge">Go 1.21</span>
                <span class="badge">PostgreSQL</span>
                <span class="badge">Redis</span>
                <span class="badge">Docker</span>
            </div>
        </div>

        <!-- Project Overview -->
        <div class="section">
            <h2>๐Ÿ“‹ Project Overview</h2>
            <p>Welcome to the <strong>Go REST API</strong> - a comprehensive, enterprise-grade REST API built with Go programming language. This project demonstrates modern API development practices with authentication, database integration, caching, file uploads, and comprehensive testing.</p>

            <div class="feature-grid">
                <div class="feature-card">
                    <h4>๐Ÿ” Security First</h4>
                    <p>JWT Authentication, Role-Based Access Control, Password Hashing, Rate Limiting</p>
                </div>
                <div class="feature-card">
                    <h4>โšก High Performance</h4>
                    <p>Redis Caching, Optimized Queries, Concurrent Processing, Memory Efficient</p>
                </div>
                <div class="feature-card">
                    <h4>๐Ÿงช Quality Assured</h4>
                    <p>Unit Tests, Integration Tests, Code Coverage, Comprehensive Documentation</p>
                </div>
                <div class="feature-card">
                    <h4>๐Ÿณ Production Ready</h4>
                    <p>Docker Containerization, Environment Configuration, Monitoring, Scalable</p>
                </div>
            </div>
        </div>

        <!-- Project Structure -->
        <div class="section">
            <h2>๐Ÿ“ Project Structure</h2>
            <p>Well-organized modular architecture with clear separation of concerns:</p>

            <div class="file-tree">
                <div class="folder">๐Ÿ“‚ go-rest-api/</div>
                <div class="folder">โ”œโ”€โ”€ ๐Ÿ“‚ cmd/</div>
                <div class="file">โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚ api/</div>
                <div class="file">โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ main.go <span class="description">// Application entry point</span></div>
                <div class="file">โ”‚   โ””โ”€โ”€ ๐Ÿ“‚ seeder/</div>
                <div class="file">โ”‚       โ””โ”€โ”€ ๐Ÿ“„ main.go <span class="description">// Database seeding</span></div>
                <div class="folder">โ”œโ”€โ”€ ๐Ÿ“‚ internal/</div>
                <div class="file">โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚ cache/</div>
                <div class="file">โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ cache.go <span class="description">// Redis caching layer</span></div>
                <div class="file">โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚ config/</div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ config.go <span class="description">// Configuration management</span></div>
                <div class="file">โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ config_test.go <span class="description">// Config tests</span></div>
                <div class="file">โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚ database/</div>
                <div class="file">โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ database.go <span class="description">// Database connection</span></div>
                <div class="file">โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚ handlers/</div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ auth_handler.go <span class="description">// Authentication endpoints</span></div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ product_handler.go <span class="description">// Product CRUD operations</span></div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ category_handler.go <span class="description">// Category management</span></div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ upload_handler.go <span class="description">// File upload handling</span></div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ api_handler.go <span class="description">// General API endpoints</span></div>
                <div class="file">โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ *_test.go <span class="description">// Unit tests</span></div>
                <div class="file">โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚ middleware/</div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ auth_middleware.go <span class="description">// JWT authentication</span></div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ role_middleware.go <span class="description">// Role-based access</span></div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ ratelimit.go <span class="description">// Rate limiting</span></div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ cors.go <span class="description">// CORS handling</span></div>
                <div class="file">โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ logger.go <span class="description">// Request logging</span></div>
                <div class="file">โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚ models/</div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ user.go <span class="description">// User data model</span></div>
                <div class="file">โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“„ product.go <span class="description">// Product data model</span></div>
                <div class="file">โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ category.go <span class="description">// Category data model</span></div>
                <div class="file">โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚ response/</div>
                <div class="file">โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ response.go <span class="description">// API response utilities</span></div>
                <div class="file">โ”‚   โ”œโ”€โ”€ ๐Ÿ“‚ routes/</div>
                <div class="file">โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“„ routes.go <span class="description">// Route definitions</span></div>
                <div class="file">โ”‚   โ””โ”€โ”€ ๐Ÿ“‚ validation/</div>
                <div class="file">โ”‚       โ””โ”€โ”€ ๐Ÿ“„ validation.go <span class="description">// Input validation</span></div>
                <div class="folder">โ”œโ”€โ”€ ๐Ÿ“‚ tests/</div>
                <div class="file">โ”‚   โ””โ”€โ”€ ๐Ÿ“„ integration_test.go <span class="description">// Integration tests</span></div>
                <div class="folder">โ”œโ”€โ”€ ๐Ÿ“‚ docs/</div>
                <div class="file">โ”‚   โ””โ”€โ”€ ๐Ÿ“„ docs.go <span class="description">// Swagger documentation</span></div>
                <div class="file">โ”œโ”€โ”€ ๐Ÿ“„ go.mod <span class="description">// Go module definition</span></div>
                <div class="file">โ”œโ”€โ”€ ๐Ÿ“„ go.sum <span class="description">// Dependency checksums</span></div>
                <div class="file">โ”œโ”€โ”€ ๐Ÿ“„ docker-compose.yml <span class="description">// Docker orchestration</span></div>
                <div class="file">โ”œโ”€โ”€ ๐Ÿ“„ Dockerfile <span class="description">// Container definition</span></div>
                <div class="file">โ”œโ”€โ”€ ๐Ÿ“„ Makefile <span class="description">// Build automation</span></div>
                <div class="file">โ”œโ”€โ”€ ๐Ÿ“„ README.md <span class="description">// Project documentation</span></div>
                <div class="file">โ”œโ”€โ”€ ๐Ÿ“„ RELEASE_NOTES.md <span class="description">// Release documentation</span></div>
                <div class="file">โ”œโ”€โ”€ ๐Ÿ“„ LICENSE <span class="description">// MIT License</span></div>
                <div class="file">โ”œโ”€โ”€ ๐Ÿ“„ .env <span class="description">// Environment variables</span></div>
                <div class="file">โ””โ”€โ”€ ๐Ÿ“„ .gitignore <span class="description">// Git ignore rules</span></div>
            </div>
        </div>

        <!-- Installation Guide -->
        <div class="section">
            <h2>๐Ÿš€ Installation & Setup Guide</h2>

            <div class="step">
                <span class="step-number">1</span>
                <strong>Clone the Repository</strong>
                <div class="code-block">
git clone https://github.com/rskworld/go-rest-api.git<br>
cd go-rest-api
                </div>
            </div>

            <div class="step">
                <span class="step-number">2</span>
                <strong>Using Docker (Recommended)</strong>
                <div class="code-block">
# Start all services (PostgreSQL, Redis, API)<br>
docker-compose up --build<br><br>
# API will be available at: http://localhost:8080<br>
# Swagger docs at: http://localhost:8080/swagger/index.html
                </div>
            </div>

            <div class="step">
                <span class="step-number">3</span>
                <strong>Manual Setup (Alternative)</strong>
                <div class="code-block">
# Install Go dependencies<br>
go mod download<br><br>
# Configure environment<br>
cp .env.example .env<br>
# Edit .env with your database settings<br><br>
# Run database migrations<br>
make seed<br><br>
# Start the server<br>
make run
                </div>
            </div>

            <div class="highlight">
                <strong>๐Ÿ’ก Prerequisites:</strong> Docker, Docker Compose, or Go 1.21+ installed on your system.
            </div>
        </div>

        <!-- API Endpoints -->
        <div class="section">
            <h2>๐Ÿ”— API Endpoints</h2>

            <h3>Authentication</h3>
            <div class="endpoint">
                <span class="method">POST</span>
                <span class="path">/api/v1/register</span>
                <p>User registration with name, email, and password</p>
            </div>
            <div class="endpoint">
                <span class="method">POST</span>
                <span class="path">/api/v1/login</span>
                <p>User login with JWT token generation</p>
            </div>
            <div class="endpoint">
                <span class="method">GET</span>
                <span class="path">/api/v1/profile</span>
                <p>Get authenticated user profile (requires Bearer token)</p>
            </div>

            <h3>Products Management</h3>
            <div class="endpoint">
                <span class="method">GET</span>
                <span class="path">/api/v1/products</span>
                <p>List products with search, filtering, and pagination</p>
            </div>
            <div class="endpoint">
                <span class="method">GET</span>
                <span class="path">/api/v1/products/:id</span>
                <p>Get specific product details</p>
            </div>
            <div class="endpoint">
                <span class="method">POST</span>
                <span class="path">/api/v1/products</span>
                <p>Create new product (Admin only)</p>
            </div>
            <div class="endpoint">
                <span class="method">PUT</span>
                <span class="path">/api/v1/products/:id</span>
                <p>Update product (Admin only)</p>
            </div>
            <div class="endpoint">
                <span class="method">DELETE</span>
                <span class="path">/api/v1/products/:id</span>
                <p>Delete product (Admin only)</p>
            </div>

            <h3>Categories Management</h3>
            <div class="endpoint">
                <span class="method">GET</span>
                <span class="path">/api/v1/categories</span>
                <p>List all categories</p>
            </div>
            <div class="endpoint">
                <span class="method">GET</span>
                <span class="path">/api/v1/categories/:id</span>
                <p>Get category details with products</p>
            </div>
            <div class="endpoint">
                <span class="method">POST</span>
                <span class="path">/api/v1/categories</span>
                <p>Create category (Admin only)</p>
            </div>

            <h3>File Management</h3>
            <div class="endpoint">
                <span class="method">POST</span>
                <span class="path">/api/v1/products/:id/upload</span>
                <p>Upload product image (Admin only)</p>
            </div>
            <div class="endpoint">
                <span class="method">DELETE</span>
                <span class="path">/api/v1/products/:id/image</span>
                <p>Delete product image (Admin only)</p>
            </div>

            <h3>System</h3>
            <div class="endpoint">
                <span class="method">GET</span>
                <span class="path">/api/v1/health</span>
                <p>Health check endpoint</p>
            </div>
            <div class="endpoint">
                <span class="method">GET</span>
                <span class="path">/swagger/*</span>
                <p>API documentation (Swagger UI)</p>
            </div>
        </div>

        <!-- Usage Examples -->
        <div class="section">
            <h2>๐Ÿ’ก Usage Examples</h2>

            <h3>1. User Registration</h3>
            <div class="code-block">
curl -X POST http://localhost:8080/api/v1/register \<br>
  -H "Content-Type: application/json" \<br>
  -d '{<br>
    "name": "John Doe",<br>
    "email": "john@example.com",<br>
    "password": "password123"<br>
  }'
            </div>

            <h3>2. User Login</h3>
            <div class="code-block">
curl -X POST http://localhost:8080/api/v1/login \<br>
  -H "Content-Type: application/json" \<br>
  -d '{<br>
    "email": "john@example.com",<br>
    "password": "password123"<br>
  }'
            </div>

            <h3>3. Get Products with Search</h3>
            <div class="code-block">
curl "http://localhost:8080/api/v1/products?search=laptop&page=1&limit=10"
            </div>

            <h3>4. Create Product (Admin)</h3>
            <div class="code-block">
curl -X POST http://localhost:8080/api/v1/products \<br>
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \<br>
  -H "Content-Type: application/json" \<br>
  -d '{<br>
    "name": "Gaming Laptop",<br>
    "description": "High-performance gaming laptop",<br>
    "price": 1299.99,<br>
    "stock": 50,<br>
    "category_id": 1<br>
  }'
            </div>

            <h3>5. Upload Product Image</h3>
            <div class="code-block">
curl -X POST http://localhost:8080/api/v1/products/1/upload \<br>
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \<br>
  -F "image=@laptop.jpg"
            </div>
        </div>

        <!-- Testing -->
        <div class="section">
            <h2>๐Ÿงช Testing & Quality Assurance</h2>

            <h3>Running Tests</h3>
            <div class="code-block">
# Run all tests<br>
make test<br><br>
# Run tests with coverage<br>
make test-coverage<br><br>
# Run integration tests<br>
go test ./tests/...<br><br>
# View coverage report<br>
open coverage.html
            </div>

            <h3>Test Coverage Includes:</h3>
            <ul>
                <li>โœ… Unit tests for all handlers</li>
                <li>โœ… Middleware testing</li>
                <li>โœ… Input validation testing</li>
                <li>โœ… Authentication testing</li>
                <li>โœ… Integration testing</li>
                <li>โœ… Error handling testing</li>
            </ul>
        </div>

        <!-- Configuration -->
        <div class="section">
            <h2>โš™๏ธ Configuration</h2>

            <h3>Environment Variables (.env)</h3>
            <div class="code-block">
# Database Configuration<br>
DB_HOST=localhost<br>
DB_USER=postgres<br>
DB_PASSWORD=your_password<br>
DB_NAME=gorestapi<br>
DB_PORT=5432<br><br>
# Authentication<br>
JWT_SECRET=your_jwt_secret_key<br><br>
# Server<br>
PORT=8080<br><br>
# File Upload<br>
UPLOAD_PATH=./uploads<br><br>
# Redis Cache<br>
REDIS_HOST=localhost<br>
REDIS_PORT=6379<br>
CACHE_ENABLED=true
            </div>

            <h3>Makefile Commands</h3>
            <div class="code-block">
make run          # Start the server<br>
make build        # Build the application<br>
make test         # Run all tests<br>
make seed         # Run database seeder<br>
make docker-up    # Start Docker services<br>
make docker-down  # Stop Docker services<br>
make clean        # Clean build artifacts
            </div>
        </div>

        <!-- Architecture -->
        <div class="section">
            <h2>๐Ÿ—๏ธ Architecture & Features</h2>

            <div class="feature-grid">
                <div class="feature-card">
                    <h4>๐Ÿ” Security</h4>
                    <p>JWT Authentication<br>Role-Based Access Control<br>Password Hashing<br>Rate Limiting<br>CORS Protection</p>
                </div>
                <div class="feature-card">
                    <h4>๐Ÿ“Š Database</h4>
                    <p>PostgreSQL Integration<br>GORM ORM<br>Automatic Migrations<br>Relationship Management<br>Query Optimization</p>
                </div>
                <div class="feature-card">
                    <h4>โšก Performance</h4>
                    <p>Redis Caching<br>Efficient Pagination<br>Concurrent Processing<br>Memory Optimization<br>Database Indexing</p>
                </div>
                <div class="feature-card">
                    <h4>๐Ÿงช Quality</h4>
                    <p>Unit Testing<br>Integration Testing<br>Code Coverage<br>Input Validation<br>Error Handling</p>
                </div>
                <div class="feature-card">
                    <h4>๐Ÿณ DevOps</h4>
                    <p>Docker Containerization<br>Environment Config<br>Automated Testing<br>CI/CD Ready<br>Production Deployment</p>
                </div>
                <div class="feature-card">
                    <h4>๐Ÿ“š Documentation</h4>
                    <p>Swagger API Docs<br>Comprehensive README<br>Code Comments<br>Usage Examples<br>Architecture Guide</p>
                </div>
            </div>
        </div>

        <!-- Links & Resources -->
        <div class="section">
            <h2>๐Ÿ”— Links & Resources</h2>

            <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px;">
                <div style="text-align: center;">
                    <h4>๐Ÿ“– Documentation</h4>
                    <a href="README.md">Complete README</a><br>
                    <a href="RELEASE_NOTES.md">Release Notes</a><br>
                    <a href="/swagger/index.html">API Documentation</a>
                </div>
                <div style="text-align: center;">
                    <h4>๐Ÿ“ฆ Repository</h4>
                    <a href="https://github.com/rskworld/go-rest-api.git" target="_blank">GitHub Repository</a><br>
                    <a href="https://github.com/rskworld/go-rest-api/tags" target="_blank">Version Tags</a><br>
                    <a href="https://github.com/rskworld/go-rest-api/releases" target="_blank">Releases</a>
                </div>
                <div style="text-align: center;">
                    <h4>๐Ÿ› ๏ธ Technologies</h4>
                    <a href="https://golang.org/" target="_blank">Go Programming</a><br>
                    <a href="https://gin-gonic.com/" target="_blank">Gin Framework</a><br>
                    <a href="https://gorm.io/" target="_blank">GORM ORM</a>
                </div>
                <div style="text-align: center;">
                    <h4>๐Ÿ“ž Support</h4>
                    <a href="mailto:help@rskworld.in">Email Support</a><br>
                    <a href="https://rskworld.in" target="_blank">Website</a><br>
                    <a href="https://rskworld.in/contact.php" target="_blank">Contact Form</a>
                </div>
            </div>
        </div>

        <!-- Footer -->
        <div class="footer">
            <h2>๐ŸŽ‰ Thank You!</h2>
            <p>This comprehensive Go REST API serves as a solid foundation for your projects.<br>
            Built with โค๏ธ by RSK World</p>

            <div class="social-links">
                <a href="https://github.com/rskworld/go-rest-api.git" target="_blank">๐Ÿ“ฆ GitHub</a>
                <a href="https://rskworld.in" target="_blank">๐ŸŒ Website</a>
                <a href="mailto:help@rskworld.in">๐Ÿ“ง Contact</a>
            </div>

            <p style="margin-top: 20px; font-size: 0.9em; opacity: 0.8;">
                ยฉ 2026 RSK World. Licensed under MIT License.<br>
                Version 1.0.0 - Complete Enterprise-Grade REST API
            </p>
        </div>
    </div>

    <script>
        // Add some interactive features
        document.addEventListener('DOMContentLoaded', function() {
            // Smooth scrolling for anchor links
            document.querySelectorAll('a[href^="#"]').forEach(anchor => {
                anchor.addEventListener('click', function (e) {
                    e.preventDefault();
                    const target = document.querySelector(this.getAttribute('href'));
                    if (target) {
                        target.scrollIntoView({
                            behavior: 'smooth',
                            block: 'start'
                        });
                    }
                });
            });

            // Add copy-to-clipboard functionality for code blocks
            document.querySelectorAll('.code-block').forEach(block => {
                block.addEventListener('click', function() {
                    const text = this.textContent;
                    navigator.clipboard.writeText(text).then(() => {
                        // Visual feedback
                        const original = this.style.background;
                        this.style.background = '#4CAF50';
                        setTimeout(() => {
                            this.style.background = original;
                        }, 200);
                    });
                });
            });
        });
    </script>
</body>
</html>
711 linesโ€ข27.8 KB
markup
.env
Raw Download
Find: Go to:
# Author: RSK World
# Email: help@rskworld.in / support@rskworld.in
# Website: https://rskworld.in/contact.php
# Year: 2026

# Database Configuration
DB_HOST=localhost
DB_USER=postgres
DB_PASSWORD=postgres
DB_NAME=gorestapi
DB_PORT=5432

# Authentication
JWT_SECRET=supersecretkey2026rskworld

# Server Configuration
PORT=8080

# File Upload Configuration
UPLOAD_PATH=./uploads

# Redis Cache Configuration
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
CACHE_ENABLED=false
27 linesโ€ข506 B
text

About RSK World

Founded by Molla Samser, with Designer & Tester Rima Khatun, RSK World is your one-stop destination for free programming resources, source code, and development tools.

Founder: Molla Samser
Designer & Tester: Rima Khatun

Development

  • Game Development
  • Web Development
  • Mobile Development
  • AI Development
  • Development Tools

Legal

  • Terms & Conditions
  • Privacy Policy
  • Disclaimer

Contact Info

Nutanhat, Mongolkote
Purba Burdwan, West Bengal
India, 713147

+91 93305 39277

hello@rskworld.in
support@rskworld.in

© 2026 RSK World. All rights reserved.

Content used for educational purposes only. View Disclaimer