{"id":20554906,"url":"https://github.com/dariomatias-dev/todo_golang","last_synced_at":"2026-04-12T17:44:15.525Z","repository":{"id":210281821,"uuid":"726186809","full_name":"dariomatias-dev/todo_golang","owner":"dariomatias-dev","description":"To-do list API built in Golang","archived":false,"fork":false,"pushed_at":"2023-12-01T18:44:55.000Z","size":20,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-16T17:57:34.520Z","etag":null,"topics":["crud","docker","docker-compose","gin","go","golang","postgresql","source-code","sql","sqlc"],"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/dariomatias-dev.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}},"created_at":"2023-12-01T18:10:15.000Z","updated_at":"2023-12-01T18:13:48.000Z","dependencies_parsed_at":"2023-12-01T19:46:19.694Z","dependency_job_id":null,"html_url":"https://github.com/dariomatias-dev/todo_golang","commit_stats":null,"previous_names":["dariomatias-dev/todo_golang"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dariomatias-dev%2Ftodo_golang","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dariomatias-dev%2Ftodo_golang/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dariomatias-dev%2Ftodo_golang/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dariomatias-dev%2Ftodo_golang/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dariomatias-dev","download_url":"https://codeload.github.com/dariomatias-dev/todo_golang/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242159902,"owners_count":20081568,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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","docker","docker-compose","gin","go","golang","postgresql","source-code","sql","sqlc"],"created_at":"2024-11-16T03:14:23.300Z","updated_at":"2026-04-12T17:44:10.492Z","avatar_url":"https://github.com/dariomatias-dev.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# API de lista de tarefas feita em Golang\n\nBem-vindo à To-Do API, uma aplicação de lista de tarefas construída em Go utilizando os frameworks Gin para a camada Web, SQLC para acesso ao banco de dados e Docker para a execução do banco de dados.\n\n## Tecnologias usadas\n\n- [Go](https://go.dev/)\n- [Gin](https://gin-gonic.com/)\n- [SQLC](https://sqlc.dev/)\n- [Docker](https://www.docker.com/)\n- [PostgreSQL](https://www.postgresql.org/)\n\n## Requisitos\n\nCertifique-se de ter os seguintes itens instalados antes de iniciar:\n\n- Go (versão utilizada no projeto: 1.21.4)\n- Docker\n- Imagem do PostgreSQL baixada\n- SQLC (foi instalado na maquina)\n\n## Instalação e Execução\n\nClone o repositório:\n\n```bash\ngit clone https://github.com/dariomatias-dev/todo_golang\ncd todo_golang\n```\n\nAbra o arquivo `.env_example` e remova do seu nome `_example`, depois preencha os campos que estão faltando.\n\nInstale as depedências:\n\n```bash\ngo mod download\n```\n\nCrie o container com o banco de dados:\n\n```bash\ndocker-compose up -d\n```\n\nObs.: Se estiver no Linux e tiver dado erro, provavelmente irá precisar colocar `sudo` antes do comando.\n\nRode a aplicação:\n\n```bash\ngo run main.go\n```\n\n## Endpoints\n\nA API fornece os seguintes endpoints:\n\n- POST `/todo`: Criação de uma nova tarefa. Por padrão a tarefa é criada com o valor `false` no campo `status`.\n- GET `/todos/:id`: Retorna a tarefa do ID enviado, caso não exista será retornado o valor `null`.\n- GET `/todos`: Retorna todas as tarefas, caso não exista nenhuma no banco de dados será retornado `null`.\n- PATCH `/todos/:id`: Atualiza uma tarefa existente.\n- PATCH `/todo-status/:id`: Atualiza o status da tarefa.\n- DELETE `/todos/:id`: Exclui uma tarefa.\n\n## Licença\n\nEste projeto é licenciado sob a Licença MIT.\n\nDivirta-se usando a To-Do API construída em Go!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdariomatias-dev%2Ftodo_golang","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdariomatias-dev%2Ftodo_golang","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdariomatias-dev%2Ftodo_golang/lists"}