{"id":25898237,"url":"https://github.com/clebsf/go-finance","last_synced_at":"2026-06-09T15:03:09.128Z","repository":{"id":234165118,"uuid":"776413884","full_name":"clebsf/go-finance","owner":"clebsf","description":"A simple Go-based API for tracking and managing personal expenses. This CRUD application allows users to create, read, update, and delete expense records. It’s designed with clean architecture principles, utilizing Go modules for dependency management.","archived":false,"fork":false,"pushed_at":"2024-03-24T17:55:46.000Z","size":3,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-03T00:17:40.201Z","etag":null,"topics":["crud-api","go","golang"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/clebsf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-03-23T12:47:56.000Z","updated_at":"2024-09-02T11:09:18.000Z","dependencies_parsed_at":"2024-04-18T11:27:47.614Z","dependency_job_id":"55acffbe-e830-4025-841b-aead4e8b152a","html_url":"https://github.com/clebsf/go-finance","commit_stats":null,"previous_names":["byclebert/go-finance","clebsf/go-finance"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/clebsf/go-finance","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebsf%2Fgo-finance","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebsf%2Fgo-finance/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebsf%2Fgo-finance/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebsf%2Fgo-finance/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clebsf","download_url":"https://codeload.github.com/clebsf/go-finance/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebsf%2Fgo-finance/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34112225,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-09T02:00:06.510Z","response_time":63,"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":["crud-api","go","golang"],"created_at":"2025-03-03T00:17:42.456Z","updated_at":"2026-06-09T15:03:09.111Z","avatar_url":"https://github.com/clebsf.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Go Finance API\n\nThis is a simple API for managing personal finances, focusing on expense tracking.\n\n## Getting Started\n\n### Prerequisites\nEnsure you have the following installed:\n- Go (version 1.22.1 or later)\n- Any necessary environment variables or additional setup specified in `go.mod`.\n\n### Installation\n\n1. Clone the repository to your local machine:\n```sh\ngit clone https://github.com/yourusername/go-finance.git\n```\n\n2. Navigate to the cloned repository:\n```sh\ncd go-finance\n```\n\n3. To start the server, run the `main.go` file located in the `cmd/api-server` directory:\n```sh\ngo run cmd/api-server/main.go\n```\n\nThe server will start on port 3000 by default.\n\n## Endpoints\n\n### Expense Management\n\n- **Create a new expense:**\n\n  `POST /v1/expenses`\n  \n  Request body should include:\n  - `amount`: The amount of the expense (a number).\n  - `description`: A brief description of the expense (a string).\n  - `category`: The category for the expense (a string).\n  \n  Example request in `create_expense.http`.\n\n- **Update an existing expense:**\n\n  `PUT /v1/expenses/{id}`\n  \n  Request body should include the same properties as the create endpoint.\n  \n  Example request in `update_expense.http`.\n\n- **Delete an expense:**\n\n  `DELETE /v1/expenses/{id}`\n  \n  Example request in `delete_expense.http`.\n\n- **List all expenses:**\n\n  `GET /v1/expenses`\n  \n  Example request in `list_expense.http`.\n\n- **Get a specific expense:**\n\n  `GET /v1/expenses/{id}`\n  \n  Example request in `get_expense.http`.\n\n## Project Structure\n\n- `cmd/api-server/main.go`: The entry point of the application.\n- `cmd/api-server/handler/expense.go`: The HTTP handlers for the expense-related endpoints.\n- `internal/model/expense.go`: The data model for an expense entity.\n- `script/`: Directory containing example HTTP requests for API endpoints.\n\n## Dependencies\n\nThis project uses Go modules for dependency management. The list of dependencies is defined in the `go.mod` file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclebsf%2Fgo-finance","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclebsf%2Fgo-finance","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclebsf%2Fgo-finance/lists"}