{"id":21802416,"url":"https://github.com/brownred/recipe-app","last_synced_at":"2026-05-07T06:32:16.888Z","repository":{"id":234331912,"uuid":"788678265","full_name":"Brownred/Recipe-App","owner":"Brownred","description":"This repository features a Recipe App, illustrating a comprehensive understanding of full-stack development. Employing React, Node.js, and PostgreSQL managed through Prisma and elephantSQL, alongside integration with the Spoonacular API, it showcases the ability to build robust, interactive, and data-driven web applications with RESTful API design ","archived":false,"fork":false,"pushed_at":"2024-04-30T07:29:37.000Z","size":73,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-21T07:14:40.664Z","etag":null,"topics":["prisma","recipe-website","rest-api","restful-api","spoonacular-api","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Brownred.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":"2024-04-18T21:53:40.000Z","updated_at":"2024-04-30T07:29:41.000Z","dependencies_parsed_at":"2024-04-27T18:24:29.902Z","dependency_job_id":"51a4ea65-bd8e-488e-9264-9aa36f61b988","html_url":"https://github.com/Brownred/Recipe-App","commit_stats":null,"previous_names":["brownred/recipe-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Brownred/Recipe-App","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Brownred%2FRecipe-App","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Brownred%2FRecipe-App/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Brownred%2FRecipe-App/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Brownred%2FRecipe-App/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Brownred","download_url":"https://codeload.github.com/Brownred/Recipe-App/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Brownred%2FRecipe-App/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262685643,"owners_count":23348449,"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":["prisma","recipe-website","rest-api","restful-api","spoonacular-api","typescript"],"created_at":"2024-11-27T11:28:33.600Z","updated_at":"2026-05-07T06:32:11.868Z","avatar_url":"https://github.com/Brownred.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Recipe App\n\n## Overview\nThis project is a robust Recipe App that leverages the Spoonacular API for recipe data, combining React for the frontend, Node.js for the backend, and PostgreSQL via elephantSQL managed by Prisma. It provides users with a platform to discover, manage, and share recipes efficiently.\n\n## Author\nLenox Miheso\n\n## Learning Experience\nThroughout the development of this project, I gained valuable experience in various aspects of web development, particularly focusing on RESTful APIs, including:\n- Setting up a React frontend with interactive components.\n- Building a scalable backend using Node.js and Express.\n- Utilizing PostgreSQL via elephantSQL and managing it with Prisma for reliable data storage and retrieval.\n- Implementing CRUD (Create, Read, Update, Delete) operations for managing recipe data.\n- Implementing JWT Authentication for secure user authentication.\n- Designing RESTful APIs for seamless communication between frontend and backend.\n- Leveraging the Spoonacular API for fetching recipe data dynamically.\n- Utilizing nodemon for automatic server restarts during development.\n\n## Technologies \u0026 Tools Used\n- **React**: Used for building the frontend user interface with interactive components.\n- **Node.js \u0026 Express.js**: Employed for developing the backend server and handling server-side logic.\n- **PostgreSQL Database (elephantSQL)**: Utilized as the primary database management system, managed via elephantSQL for seamless deployment and management.\n- **Prisma**: Utilized as an ORM tool for simplifying database interactions and queries.\n- **JWT Authentication**: Implemented for secure user authentication and authorization.\n- **RESTful API Design**: Designed APIs following the REST principles for efficient communication between frontend and backend.\n- **Spoonacular API**: Leveraged for fetching recipe data dynamically.\n- **nodemon**: Employed for automatic server restarts during development, enhancing development efficiency.\n\n## Database Setup\nTo set up the database:\n1. Ensure you have an account with elephantSQL and obtain connection details.\n2. Create a `.env` file in the backend directory and configure environment variables:\n   ```\n   DATABASE_URL=\u003cyour elephantSQL database URL\u003e\n   ```\n\n## Backend Setup\nTo set up the backend:\n1. Navigate to the project directory.\n2. Install backend dependencies:\n   ```\n   cd backend\n   npm install\n   ```\n3. Run the database migrations using Prisma CLI:\n   ```\n   npx prisma migrate dev\n   ```\n4. Start the backend server by running:\n   ```\n   npm start\n   ```\n   or for development with nodemon:\n   ```\n   npm run dev\n   ```\n\n## Frontend Setup\nTo set up the frontend:\n1. Navigate to the project directory.\n2. Install frontend dependencies:\n   ```\n   cd frontend\n   npm install\n   ```\n3. Start the React development server using:\n   ```\n   npm start\n   ```\n4. Access the application in your web browser at `http://localhost:3000`.\n\n## Spoonacular API Key Setup\nTo set up the Spoonacular API key:\n1. Obtain an API key from Spoonacular.\n2. Create a `.env` file in the backend directory and configure environment variables:\n   ```\n   SPOONACULAR_API_KEY=\u003cyour Spoonacular API key\u003e\n   ```\n\n## Contribution\nContributions to this project are welcome. Feel free to submit bug fixes, feature enhancements, or suggestions via pull requests.\n\n## License\nThis project is licensed under the [MIT License](LICENSE).\n\n## Acknowledgements\nI would like to express my gratitude to God.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrownred%2Frecipe-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrownred%2Frecipe-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrownred%2Frecipe-app/lists"}