Go Job Opportunities Api
A scalable Job Opportunities API implemented in Go, featuring Gin as the HTTP router, GORM for ORM-based database management, and SQLite as the storage layer. Includes Swagger for automatic API documentation and testing, structured with modern, maintainable Go project conventions.
Install / Use
npx skills add hinokamikagura/go-job-opportunities-apiInstalls into whichever agent you are using.
README
🚀 GoJob Opportunities API
GoJob Opportunities API is a modern, production-ready backend built with Golang, designed to manage and serve job listings efficiently. The project demonstrates professional backend practices — leveraging Gin for routing, GORM for ORM and database interactions, SQLite for lightweight persistence, and Swagger for self-documented API endpoints.
✨ Key Features
- 🔧 Built with Golang, one of the highest-paying and most in-demand backend languages
- ⚡ Gin framework for fast, efficient, and clean HTTP routing
- 🧱 GORM + SQLite for reliable data persistence with minimal setup
- 📘 Swagger integration for real-time API documentation and testing
- 🗂️ Modular, maintainable project structure following Go best practices
- 🔍 Full CRUD operations for managing job opportunities
- ✅ Automated testing to ensure stability and performance
- 🐳 Docker & Docker Compose support for rapid deployment
⚙️ Installation & Setup
1️⃣ Clone the repository
git clone https://github.com/hinokamikagura/go-job-opportunities-api.git
cd go-job-opportunities-api
2️⃣ Install dependencies
go mod download
3️⃣ Build the application
go build
4️⃣ Run the API
./main
The API runs by default on http://localhost:8080
🧰 Makefile Commands
This project includes a Makefile to simplify common development tasks:
| Command | Description |
| -------------------- | -------------------------------------------------- |
| make run | Run the API without regenerating Swagger docs |
| make run-with-docs | Generate Swagger docs and run the API |
| make build | Compile and build an executable (gopportunities) |
| make test | Run all Go tests |
| make docs | Generate Swagger documentation |
| make clean | Remove build artifacts and documentation |
Example:
make run
🐳 Docker & Deployment
Containerize and deploy effortlessly using Docker or Docker Compose.
Docker
docker build -t gojob-api .
docker run -p 8080:8080 -e PORT=8080 gojob-api
Docker Compose
docker compose build
docker compose up
To stop and clean up:
docker compose down
🧪 API Documentation
Once running, Swagger UI is available at:
http://localhost:8080/swagger/index.html
You can use it to test, visualize, and explore all API endpoints interactively.
🧩 Technologies Used
- Go (Golang) — backend language
- Gin — high-performance HTTP router
- GORM — ORM for Go
- SQLite — embedded database
- Swagger (swaggo) — auto-generated API docs
- Docker — containerization
🤝 Contributing
Contributions are welcome! Please follow the standard Git workflow:
-
Fork the repository
-
Create a new branch:
git checkout -b feature/your-feature-name -
Commit changes using Conventional Commits
-
Push your branch and open a Pull Request
⚖️ License
Licensed under the MIT License — see LICENSE.md for full details.
👨💻 Author
Created by CryptoSlayer
“Clean, modular Go code built for scalability and learning.”
Related Skills
coding-agent
385.5kDelegate coding work to Codex, Claude Code, or OpenCode as background workers; not simple edits or read-only code lookup.
gh-issues
385.5kFetch GitHub issues, select candidates, spawn background fix agents, open PRs, and optionally process PR review comments.
healthcheck
385.5kAudit/harden OpenClaw hosts: SSH, firewall, updates, exposure, backups, disk encryption, gateway security.
node-connect
385.5kDiagnose OpenClaw Android, iOS, or macOS node pairing, QR/setup code, route, auth, and connection failures.
