{"id":25692906,"url":"https://github.com/chocoscoding/api-design-nodejs","last_synced_at":"2026-04-11T16:37:14.029Z","repository":{"id":197252777,"uuid":"446606337","full_name":"chocoscoding/api-design-nodejs","owner":"chocoscoding","description":null,"archived":false,"fork":false,"pushed_at":"2023-09-29T15:30:33.000Z","size":101,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-24T23:33:55.035Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/chocoscoding.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":"2022-01-10T22:51:04.000Z","updated_at":"2023-09-29T15:19:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"cb4eb85c-14b5-4b90-88bf-a5b399b8cbdf","html_url":"https://github.com/chocoscoding/api-design-nodejs","commit_stats":null,"previous_names":["chocoscoding/api-design-nodejs"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/chocoscoding/api-design-nodejs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chocoscoding%2Fapi-design-nodejs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chocoscoding%2Fapi-design-nodejs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chocoscoding%2Fapi-design-nodejs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chocoscoding%2Fapi-design-nodejs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chocoscoding","download_url":"https://codeload.github.com/chocoscoding/api-design-nodejs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chocoscoding%2Fapi-design-nodejs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31687881,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-11T13:07:20.380Z","status":"ssl_error","status_checked_at":"2026-04-11T13:06:47.903Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2025-02-24T23:33:54.049Z","updated_at":"2026-04-11T16:37:13.996Z","avatar_url":"https://github.com/chocoscoding.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## About\n\nA project to learn about API designs and better api methods in NODE.JS from a course on frontend masters.\n\nAslo did some little tests with jest and supertest to test the api endpoints.🧪\n\nProject was deployed on render and can be found [here](https://api-design-nodejs-zr3v.onrender.com/)\n\n## How to use\n\nAvailable routes include\n\n- /\n- /api (for accessing main api)\n  - /products\n  - /updates\n- /user ( to create user)\n- /signin (to sign in user)\n\n### API ENDPOINTS\n\n| URI              | Method | Description                                                                         |\n| ---------------- | ------ | ----------------------------------------------------------------------------------- |\n| /                | GET    | Welcome route                                                                       |\n| /user            | POST   | To create a new user                                                                |\n| /signin          | GET    | To signin a user and get a bearer token                                             |\n| /api/product     | GET    | Get a list of products                                                              |\n| /api/product/:id | GET    | Get a specific product by ID                                                        |\n| /api/product/:id | PUT    | Update a specific product by ID                                                     |\n|                  |        | - Validates the 'name' field (must be a string)                                     |\n| /api/product     | POST   | Create a new product                                                                |\n|                  |        | - Validates the 'name' field (must be a string)                                     |\n| /api/product/:id | DELETE | Delete a specific product by ID                                                     |\n| /api/update      | GET    | Get a list of updates                                                               |\n| /api/update/:id  | GET    | Get a specific update by ID                                                         |\n| /api/update/:id  | PUT    | Update a specific update by ID                                                      |\n|                  |        | - Validates optional 'title', 'name', 'version' fields                              |\n|                  |        | - Validates 'status' field (must be one of: \"IN_PROGRESS\", \"SHIPPED\", \"DEPRECATED\") |\n| /api/update      | POST   | Create a new update                                                                 |\n|                  |        | - Validates 'title', 'body', 'productId' fields                                     |\n| /api/update/:id  | DELETE | Delete a specific update by ID                                                      |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchocoscoding%2Fapi-design-nodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchocoscoding%2Fapi-design-nodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchocoscoding%2Fapi-design-nodejs/lists"}