{"id":30733668,"url":"https://github.com/poetryofcode/recipe-sequalize","last_synced_at":"2025-09-03T18:50:33.021Z","repository":{"id":180777816,"uuid":"665688674","full_name":"poetryofcode/Recipe-Sequalize","owner":"poetryofcode","description":null,"archived":false,"fork":false,"pushed_at":"2023-07-13T12:51:02.000Z","size":29,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-30T15:33:45.442Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/poetryofcode.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,"publiccode":null,"codemeta":null}},"created_at":"2023-07-12T19:11:49.000Z","updated_at":"2024-04-22T13:37:56.000Z","dependencies_parsed_at":"2024-06-02T03:45:27.230Z","dependency_job_id":"2a0b6a1b-1b48-483e-9b8d-bde2caf77e90","html_url":"https://github.com/poetryofcode/Recipe-Sequalize","commit_stats":null,"previous_names":["vitalipri/recipe-sequalize","codeofpoetry/recipe-sequalize","craftingweb/recipe-sequalize","poetryofcode/recipe-sequalize"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/poetryofcode/Recipe-Sequalize","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poetryofcode%2FRecipe-Sequalize","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poetryofcode%2FRecipe-Sequalize/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poetryofcode%2FRecipe-Sequalize/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poetryofcode%2FRecipe-Sequalize/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/poetryofcode","download_url":"https://codeload.github.com/poetryofcode/Recipe-Sequalize/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poetryofcode%2FRecipe-Sequalize/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273492814,"owners_count":25115600,"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","status":"online","status_checked_at":"2025-09-03T02:00:09.631Z","response_time":76,"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":[],"created_at":"2025-09-03T18:50:28.893Z","updated_at":"2025-09-03T18:50:33.008Z","avatar_url":"https://github.com/poetryofcode.png","language":"JavaScript","readme":"# Recipe-Sequalize\n\n\nhttps://github.com/VitaliPri/Recipe-Sequalize/assets/101225909/062354ee-3619-47f6-85c8-0476c4728811\n\nInstallation\n\n1. Clone the repository with HTTP:\ngit clone https://github.com/VitaliPri/Recipe-Sequalize.git\nwith SSH key:\ngit clone git@github.com:VitaliPri/Recipe-Sequalize.git\n\n3. Install the dependencies:\n   cd recipe-app\n   npm install\n   \n4. Database Configuration:\nSet up a PostgreSQL database.\nConfigure the database connection by updating the config/config.js file with your database credentials.\n\n5. Running the Application\nTo start the application, run the following command:\n  npm start\nThe server will start running on http://localhost:4000\n\nAPI Endpoints\n\nGet All Recipes\nEndpoint: GET /recipes\nDescription: Retrieves a list of all recipes.\nResponse:\nStatus Code: 200 (OK)\nBody: Array of recipe objects\n------------------------------------------------\nGet Recipe by ID\n\nEndpoint: GET /recipes/:id\nDescription: Retrieves a specific recipe by ID.\nParameters:\nid (string): The ID of the recipe.\nResponse:\nStatus Code: 200 (OK)\nBody: Recipe object\n-------------------------------------------------\nCreate Recipe\n\nEndpoint: POST /recipes\nDescription: Creates a new recipe.\nRequest Body:\ntitle (string): The title of the recipe.\ndescription (string): The description of the recipe.\ningredients (string): The ingredients of the recipe.\ninstructions (string): The instructions for the recipe.\nResponse:\nStatus Code: 201 (Created)\nBody: Created recipe object\n--------------------------------------------------\nUpdate Recipe\n\nEndpoint: PUT /recipes/:id\nDescription: Updates an existing recipe.\nParameters:\nid (string): The ID of the recipe to update.\nRequest Body:\ntitle (string): The updated title of the recipe.\ndescription (string): The updated description of the recipe.\ningredients (string): The updated ingredients of the recipe.\ninstructions (string): The updated instructions for the recipe.\nResponse:\nStatus Code: 200 (OK)\nBody: Updated recipe object\n---------------------------------------------------\nDelete Recipe\n\nEndpoint: DELETE /recipes/:id\nDescription: Deletes a recipe.\nParameters:\nid (string): The ID of the recipe to delete.\nResponse:\nStatus Code: 204 (No Content)\n\n#Validation\nServer-side data validation is implemented using Sequelize's built-in validation methods. The following fields have specific validation rules:\n\ntitle: Required, minimum length of 3 characters.\ndescription: Required, maximum length of 500 characters.\ningredients: Required, maximum length of 1000 characters.\ninstructions: Required, maximum length of 5000 characters.\n\n#Error Handling\nThe application handles errors and provides appropriate error messages for invalid requests or database errors. When an error occurs, the server responds with the appropriate status code and an error message in the response body.\n\nContributing\nContributions are welcome! If you find any issues or want to enhance the application, please submit a pull request.\n\n\n\u003cimg alt=\"GitHub forks\" src=\"https://img.shields.io/github/forks/VitaliPri/Recipe-Sequalize\"\u003e\n\u003cimg alt=\"GitHub followers\" src=\"https://img.shields.io/github/followers/VitaliPri\"\u003e\n\u003cimg alt=\"GitHub Repo stars\" src=\"https://img.shields.io/github/stars/VitaliPri/Recipe-Sequalize\"\u003e\n\u003cimg alt=\"GitHub watchers\" src=\"https://img.shields.io/github/watchers/VitaliPri/Recipe-Sequalize\"\u003e\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoetryofcode%2Frecipe-sequalize","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpoetryofcode%2Frecipe-sequalize","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoetryofcode%2Frecipe-sequalize/lists"}