{"id":23069881,"url":"https://github.com/lafayettegabe/simple-firebase-rest-api","last_synced_at":"2025-12-30T21:09:00.696Z","repository":{"id":237393025,"uuid":"794289945","full_name":"lafayettegabe/simple-firebase-rest-api","owner":"lafayettegabe","description":"🔥 Firebase \u0026 Next.js | Blazing-fast and serverless REST API","archived":false,"fork":false,"pushed_at":"2024-05-05T04:16:58.000Z","size":72,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-08T23:27:12.509Z","etag":null,"topics":["api","crud","firebase","firebase-database","firebase-template","firestore","next-template","next14","next14-template","next14example","nextjs","redux","rest-api","serverless","starter","template"],"latest_commit_sha":null,"homepage":"https://simple-firebase-rest-api.vercel.app/","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/lafayettegabe.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":"2024-04-30T20:37:01.000Z","updated_at":"2024-09-20T18:22:29.000Z","dependencies_parsed_at":"2024-05-05T05:22:50.648Z","dependency_job_id":"fc3c10ff-61e0-4203-9cb7-e9f2166cab08","html_url":"https://github.com/lafayettegabe/simple-firebase-rest-api","commit_stats":null,"previous_names":["lafayettegabe/simple-firebase-crud-api"],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lafayettegabe%2Fsimple-firebase-rest-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lafayettegabe%2Fsimple-firebase-rest-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lafayettegabe%2Fsimple-firebase-rest-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lafayettegabe%2Fsimple-firebase-rest-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lafayettegabe","download_url":"https://codeload.github.com/lafayettegabe/simple-firebase-rest-api/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246981174,"owners_count":20863828,"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":["api","crud","firebase","firebase-database","firebase-template","firestore","next-template","next14","next14-template","next14example","nextjs","redux","rest-api","serverless","starter","template"],"created_at":"2024-12-16T06:17:49.636Z","updated_at":"2025-10-12T03:34:40.011Z","avatar_url":"https://github.com/lafayettegabe.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- markdownlint-configure-file {\n  \"MD013\": {\n    \"code_blocks\": false,\n    \"tables\": false\n  },\n  \"MD033\": false,\n  \"MD041\": false\n} --\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \n\u003ca href=\"https://simple-firebase-crud-api.vercel.app/\"\u003e\n    \u003cimg src=\"https://imgur.com/f3SMCPT.png\" width=\"180\" alt=\"Warp\" /\u003e\n\u003c/a\u003e\n\n# 🔥 Simple Firebase REST API\n\n### Firebase \u0026 Next.js | Blazing-fast and serverless REST API\n\n[![nextjs][nextjs-badge]][nextjs]\n[![react][react-badge]][react]\n[![redux][redux-badge]][redux]\n[![firebase][firebase-badge]][firebase]\n\n\u003ca href=\"https://vercel.com/\" target=\"_blank\" rel=\"noopener\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/abumalick/powered-by-vercel/master/powered-by-vercel.svg\" width=\"175\" alt=\"Powered by Vercel\" /\u003e\n\u003c/a\u003e\n\n\u003c/div\u003e\n\n## Why?\n\nI created this demo app to showcase in my Operating Systems class for reading, adding, and deleting items from Firestore with just a few clicks. It also serves as a simple Next.js starter project integrated with Firebase Firestore, making replication easy.\n\nThe reason behind this project was the need to receive data from a microcontroller using FreeRTOS and store this data in a database for further analysis and potential integration into other applications.\n\n## Using this code\n\nRemember to update the configuration in `/lib/firebase.ts` (the current one will only work for a few more days).\n\n```tsx\nimport { initializeApp } from \"firebase/app\";\nimport { getAuth } from \"firebase/auth\";\nimport { getFirestore } from \"firebase/firestore\";\n\n// ============================================================\n// ============================================================\n// ========= Put your own Firebase configuration here =========\n// 👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇\n\nconst firebaseConfig = {\n  apiKey: \"AIzaSyCxqCyglAG9tUQlp8hxqpQFlJLKnog0h-w\",\n  authDomain: \"os-example-313ee.firebaseapp.com\",\n  projectId: \"os-example-313ee\",\n  storageBucket: \"os-example-313ee.appspot.com\",\n  messagingSenderId: \"754955767049\",\n  appId: \"1:754955767049:web:f03b3eadd402e31a9fd7d8\",\n  measurementId: \"G-SRV4Y5K1XE\",\n};\n\n// ☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️☝️\n// ============================================================\n// ============================================================\n\nconst app = initializeApp(firebaseConfig);\nexport const auth = getAuth(app);\nexport const db = getFirestore(app);\n```\n\nSample curl to test with external data:\n\n```\ncurl -X POST http://localhost:3000/api/firebase \\\n-H \"Content-Type: application/json\" \\\n-d '{\"data\": {\"lat\": -37.82, \"lon\": 144.98}}'\n```\n\n## Learn More about Next.js\n\nTo learn more about Next.js, take a look at the following resources:\n\n- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.\n- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.\n\nYou can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!\n\n## Deploy on Vercel\n\nThe easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template\u0026filter=next.js\u0026utm_source=create-next-app\u0026utm_campaign=create-next-app-readme) from the creators of Next.js.\n\nCheck out [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.\n\n[firebase]: https://firebase.google.com/\n[firebase-badge]: https://img.shields.io/badge/firebase-a08021?style=for-the-badge\u0026logo=firebase\u0026logoColor=ffcd34\n[nextjs]: https://nextjs.org/\n[nextjs-badge]: https://img.shields.io/badge/Next-black?style=for-the-badge\u0026logo=next.js\u0026logoColor=white\n[react]: https://react.dev/\n[react-badge]: https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge\u0026logo=react\u0026logoColor=%2361DAFB\n[redux]: https://redux.js.org/\n[redux-badge]: https://img.shields.io/badge/redux-%23593d88.svg?style=for-the-badge\u0026logo=redux\u0026logoColor=white\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flafayettegabe%2Fsimple-firebase-rest-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flafayettegabe%2Fsimple-firebase-rest-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flafayettegabe%2Fsimple-firebase-rest-api/lists"}