{"id":14987527,"url":"https://github.com/satnaing/next-bookstore","last_synced_at":"2025-04-13T04:09:00.650Z","repository":{"id":63426021,"uuid":"565368855","full_name":"satnaing/next-bookstore","owner":"satnaing","description":"An online bookstore developed using NextJS 13 with appDir and StrapiCMS. (Still in Beta)","archived":false,"fork":false,"pushed_at":"2024-06-20T14:08:21.000Z","size":5905,"stargazers_count":96,"open_issues_count":11,"forks_count":32,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-13T04:08:44.532Z","etag":null,"topics":["ecommerce","headless-cms","nextjs","react","strapi","tailwindcss","tanstack-query","typescript","zustand"],"latest_commit_sha":null,"homepage":"https://nextbookstore.vercel.app","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/satnaing.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2022-11-13T07:05:46.000Z","updated_at":"2025-03-20T09:59:13.000Z","dependencies_parsed_at":"2023-10-11T11:19:19.643Z","dependency_job_id":"f6a323e3-2822-4068-a436-02f72aca4de1","html_url":"https://github.com/satnaing/next-bookstore","commit_stats":{"total_commits":304,"total_committers":2,"mean_commits":152.0,"dds":0.02631578947368418,"last_synced_commit":"9ce35642fd660f304fbe7708b8692fef46f7e467"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satnaing%2Fnext-bookstore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satnaing%2Fnext-bookstore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satnaing%2Fnext-bookstore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satnaing%2Fnext-bookstore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/satnaing","download_url":"https://codeload.github.com/satnaing/next-bookstore/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248661704,"owners_count":21141450,"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":["ecommerce","headless-cms","nextjs","react","strapi","tailwindcss","tanstack-query","typescript","zustand"],"created_at":"2024-09-24T14:14:53.209Z","updated_at":"2025-04-13T04:09:00.598Z","avatar_url":"https://github.com/satnaing.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Next Bookstore (Beta)\n\n![Next Bookstore by Sat Naing](next-bookstore.png)\n\nAn e-commerce project for an online bookstore developed using NextJS 13 and its experimental `appDir`. Frontend UI is crafted with radix-ui and TailwindCSS. To manage server and client state, TanStack Query and Zustand are used respectively. StrapiCMS serves as the backend for this project.\n\n\u003e I designed the entire UI/UX using Figma and created the database design myself. Additionally, I developed this web application from scratch, handling all aspects of the development process.\n\n## Features 🔥\n\n- Responsive Design\n- Search Functionality\n- Add To Cart\n- Add To Wishlist\n- SEO-friendly\n- Accessible\n\n## Features (Coming Soon 👀) 🚧\n\nThe following are the features and functionalities to be added in the future.\n\n- Order Processing\n- Filtering Items\n- Better Pagination\n- Better Error Handling\n- Better Loading UI with Next 13\n- Accessibility enhancements\n- Security improvements\n- PWA? 🤷🏻‍♂️\n- Testing? 🤷🏻‍♂️\n\n## Technologies Used 👨🏻‍💻\n\n- **NextJS 13 with appDir** - _frontend development_\n- **TypeScript** - _type checking_\n- **Radix UI** - _accessible components_\n- **TailwindCSS** - _styling_\n- **Zustand** - _client state_\n- **Tanstack-Query \u0026 Axios** - _data fetching and server state_\n- **React-hook-form** - _form management_\n- **Eslint** - _linting_\n- **Figma** - _UI/UX_\n- **StrapiCMS** - _backend_\n- **Cloudinary** - _image hosting_\n- **Vercel \u0026 Railway** - _frontend \u0026 backend hosting_\n\n## Installation 🔮\n\nTo run the project locally, follow these steps:\n\nClone the repository:\n\n```bash\ngit clone https://github.com/satnaing/next-bookstore.git\n```\n\nInstall dependencies for frontend:\n\n```bash\ncd next-bookstore \u0026\u0026 npm install\n```\n\nInstall dependencies for backend:\n\n```bash\ncd backend \u0026\u0026 npm install\n```\n\nStart the frontend: (at the root /)\n\n```bash\nnpm run dev\n```\n\nStart the backend:\n\n```bash\ncd backend \u0026\u0026 npm run develop\n```\n\nOpen your browser and go to \u003chttp://localhost:3000\u003e\n\n## Important Note ⚠️\n\nI have intentionally committed the `backend/.tmp/data.db` file to the GitHub repository. This is because I did not want to set up a separate database for the project and connect it to my free backend hosting. Please note that this approach is not recommended for production-level applications. In a real-world scenario, I would use a more robust DBMS like PostgreSQL, with proper hosting and security configurations.\n\n## Photo Credits 📸\n\n- Hero section image: [Photo by Evgeny Tchebotarev from Pexels](https://www.pexels.com/photo/the-world-atlas-of-coffee-book-2187601/)\n- About Page background: [Photo by Min An from Pexels](https://www.pexels.com/photo/pile-of-assorted-novel-books-694740/)\n- About Page other image: [Photo by Marta Dzedyshko from Pexels](https://www.pexels.com/photo/assorted-title-books-collection-2067569/)\n\n## Contributing ✨\n\nContributions are welcome! If you find a bug or want to suggest an improvement, please open an issue or submit a pull request.\n\n## License 📜\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsatnaing%2Fnext-bookstore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsatnaing%2Fnext-bookstore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsatnaing%2Fnext-bookstore/lists"}