Help us shape the future of Go! Take the 2026 Go Developer Survey

naqa-api

module
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 27, 2024 License: MIT

README

Naqa API

Release

Naqa API is a RESTful service designed to provide data on the purification process of Saudi stocks.

Version Information

  • Version: 1.0.0
  • Environment: Development
  • Base API Path: /api/v1

Prerequisites

  • Go 1.23.4 or higher
  • Git
  • MongoDB

Quick Start

  1. Clone the repository:
git clone https://github.com/anqorithm/naqa-api
cd naqa-api
  1. Install dependencies:
go mod download
  1. Set up environment variables:
cp .env.example .env
# Edit .env with your configurations

Environment Variables

Before running the application, make sure to set up your environment variables:

# Copy the example env file
cp .env.example .env

# Fill in your environment variables in .env file:
API_VERSION      # API version
ENVIRONMENT      # development, production, etc.
PORT            # Server port
APP_NAME        # Application name
APP_DESCRIPTION # Application description
MONGO_URI      # MongoDB connection URI
MONGO_DATABASE # MongoDB database name

Running the Application

Local Development
go run cmd/api/main.go

Server will start at http://localhost:3000

Docker Setup
# Start services
docker-compose up -d

# Stop services
docker-compose down
Manual Docker Build
# Build image
docker build -t naqa-api .

# Run container
docker run -d -p 3000:3000 naqa-api

API Endpoints

Base URL

http://localhost:3000/api/v1

Available Endpoints
  • GET / - API information
  • GET /health - Health check
  • GET /users - Users endpoints
  • GET /tasks - Tasks endpoints

Development

Project Structure
.
├── cmd/
│   └── api/          # Application entrypoint
├── internal/
│   ├── config/       # Configuration
│   ├── handlers/     # Request handlers
│   ├── middleware/   # Custom middleware
│   └── routes/       # Route definitions
└── docker-compose.yml
Building for Production
go build -o naqa-api cmd/api/main.go

License

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

Directories

Path Synopsis
cmd
api command
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL