{"id":23986649,"url":"https://github.com/pvfarooq/gin-crud-starter","last_synced_at":"2026-04-11T05:37:26.027Z","repository":{"id":271388983,"uuid":"913270543","full_name":"pvfarooq/gin-crud-starter","owner":"pvfarooq","description":"Gin CRUD Starter: A lightweight and modular boilerplate for building RESTful APIs with Go, featuring CRUD operations, GORM integration, and request validation.","archived":false,"fork":false,"pushed_at":"2025-01-07T11:34:34.000Z","size":20,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-03T17:18:54.872Z","etag":null,"topics":["beginner-friendly","crud","docker","docker-compose","gin","go","golang","golang-migrate","gorm","postgresql","repository-pattern","rest-api","starter-template"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pvfarooq.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-07T11:06:02.000Z","updated_at":"2025-04-21T23:18:59.000Z","dependencies_parsed_at":"2025-01-07T12:33:53.667Z","dependency_job_id":"d7cc0a7e-23ca-45fd-ab89-f34c7fe4c2e6","html_url":"https://github.com/pvfarooq/gin-crud-starter","commit_stats":null,"previous_names":["pvfarooq/gin-crud-starter"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pvfarooq/gin-crud-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pvfarooq%2Fgin-crud-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pvfarooq%2Fgin-crud-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pvfarooq%2Fgin-crud-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pvfarooq%2Fgin-crud-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pvfarooq","download_url":"https://codeload.github.com/pvfarooq/gin-crud-starter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pvfarooq%2Fgin-crud-starter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31670376,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T17:19:37.612Z","status":"online","status_checked_at":"2026-04-11T02:00:05.776Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["beginner-friendly","crud","docker","docker-compose","gin","go","golang","golang-migrate","gorm","postgresql","repository-pattern","rest-api","starter-template"],"created_at":"2025-01-07T15:36:58.186Z","updated_at":"2026-04-11T05:37:26.004Z","avatar_url":"https://github.com/pvfarooq.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CRUD App Built with Go, Gin, Gorm, and PostgreSQL\n\n## Description\nThis is a simple CRUD (Create, Read, Update, Delete) application built with Go, Gin, Gorm, and PostgreSQL. It allows you to manage users by performing basic CRUD operations. The app is designed for simplicity and serves as a great starting point for learning Go web development\n\n## Features\n- RESTful API design.\n- PostgreSQL as the database.\n- GORM for ORM (Object Relational Mapping).\n- Docker support for seamless setup.\n\n\n## Installation\n1. Clone the repository\n```bash\ngit clone https://github.com/pvfarooq/go-gin-crud\ncd go-gin-crud\n```\n2. Set Up Environment Variables\n```bash\ncp env.example .env\n```\nUpdate the `.env` file with your PostgreSQL database credentials.\n\n3. Run the App with Docker\n```bash\ndocker-compose up\n```\nThis will:\n- Start a PostgreSQL database container.\n- Launch the Go server on http://localhost:8080.\n\n## Usage\nYou can interact with the application using the following API endpoints:\n\n- `GET /users`: Get all users\n- `GET /users/:id`: Get a user by ID\n- `POST /users`: Create a new user\n- `PUT /users/:id`: Update a user by ID\n- `DELETE /users/:id`: Delete a user by ID\n\n## Project Structure\n```\n├ api/\n├── controllers/            # Contains the request handlers\n│   └── user_controller.go\n├── routes/                 # Contains the route definitions\n│   └── user_routes.go\n│   └── routes.go\n├ config/                   # Contains the configuration settings\n│   └── config.go\n├ database/ \n│   └── migrations/         # Contains the database migrations\n│   └── db.go               # Contains the database connection\n├ models/                   # Contains the data models\n│   └── user.go \n├ repositories/             # Contains the database operations\n│   └── user_repository.go\n├ services/                 # Contains the business logic\n│   └── user_service.go\n.env\ndocker-compose.yml\nDockerfile\nenv.example\ngo.mod\ngo.sum\nMakefile                    # Contains the build and run commands\nserver.go                   # Contains the main function (entry point)\n```\n\n## Contributing\nContributions are welcome! If you have suggestions or find issues, feel free to open a pull request or create an issue in the repository.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpvfarooq%2Fgin-crud-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpvfarooq%2Fgin-crud-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpvfarooq%2Fgin-crud-starter/lists"}