{"id":18065676,"url":"https://github.com/abuuzayr/hyperlocal","last_synced_at":"2025-09-09T11:38:16.273Z","repository":{"id":52206498,"uuid":"359374860","full_name":"abuuzayr/hyperlocal","owner":"abuuzayr","description":"Repository for hyperlocal.sg","archived":false,"fork":false,"pushed_at":"2023-02-11T17:54:07.000Z","size":1676,"stargazers_count":9,"open_issues_count":3,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-11T18:53:26.446Z","etag":null,"topics":["blitz","blitzjs","nextjs","singapore"],"latest_commit_sha":null,"homepage":"https://hyperlocal.sg","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/abuuzayr.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":"2021-04-19T07:54:47.000Z","updated_at":"2023-05-07T08:49:40.000Z","dependencies_parsed_at":"2024-10-31T06:11:27.461Z","dependency_job_id":"e8846d67-dab8-4577-ab0f-d821e329ae43","html_url":"https://github.com/abuuzayr/hyperlocal","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/abuuzayr/hyperlocal","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abuuzayr%2Fhyperlocal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abuuzayr%2Fhyperlocal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abuuzayr%2Fhyperlocal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abuuzayr%2Fhyperlocal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/abuuzayr","download_url":"https://codeload.github.com/abuuzayr/hyperlocal/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abuuzayr%2Fhyperlocal/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274291357,"owners_count":25258156,"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-09T02:00:10.223Z","response_time":80,"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":["blitz","blitzjs","nextjs","singapore"],"created_at":"2024-10-31T06:11:19.512Z","updated_at":"2025-09-09T11:38:16.212Z","avatar_url":"https://github.com/abuuzayr.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Contributors][contributors-shield]][contributors-url]\n[![Forks][forks-shield]][forks-url]\n[![Stargazers][stars-shield]][stars-url]\n[![Issues][issues-shield]][issues-url]\n[![MIT License][license-shield]][license-url]\n[![LinkedIn][linkedin-shield]][linkedin-url]\n[![Twitter][twitter-shield]][twitter-url]\n\n\u003c!-- PROJECT LOGO --\u003e\n\u003cbr /\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/abuuzayr/hyperlocal/\"\u003e\n    \u003cimg src=\"public/logo_transparent.png\" alt=\"Logo\" width=\"250\" height=\"250\"\u003e\n  \u003c/a\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://js-talks.netlify.com/\" rel=\"nofollow\" class=\"rich-diff-level-one\"\u003e\u003cimg src=\"https://www.pwa-shields.com/1.0.0/series/classic/white/green.svg\" alt=\"PWA Shields\" style=\"max-width:100%;\"\u003e\u003c/a\u003e\n       \u003ca aria-label=\"Blitz JS\" href=\"https://blitzjs.com\" target=\"_blank\"\u003e\n        \u003cimg alt=\"\" src=\"https://img.shields.io/badge/Built%20with%20blitzjs-6700EB.svg?style=flat-square\u0026labelColor=000000\u0026logoWidth=20\u0026logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAQ9SURBVHgB7d3dVdtAEIbhcSpICUoH0IEogQqSVBBSAU4FSSpIOoAORAfQgSghHXzZ1U/YcMD4R9rZmf2ec3y448LyiNf27iLiGIAmPLrweC9Un3DhrzG6EarLNP09nlwJ1SOZ/lQr5N80/S/p2QMVCBf5N17XCfm1Y/rBHqjAG9PPHvBsz+mf9WAP+HLA9M/YA14cOP2payH7jpj+VCtk1wnTP+vj7xCy6cTpn7EHLMLp059iD1iD8eveJbVCNsSLheX1YA/YgOWnf8YeKB3Wmf7Ud6Fy4f/FHmtpxbl3YlC4MJ/Cj0bWdwPnPbARg+L0S54XQHS32WwuxClzd4CM0z9rPfeAuTtA5ulPXYQ7wZ04Y+oOoDD9KZc9YOoOoDj9s4dwFzgXR6w1wIPoOvPWA9buAHEJ173o3gWiy3AnuBUHLEbgmYwvAk1/wuM8vAgexThzbwPDkx7/DHwVXfFOxP2GmsKd4Ab6zPeAyU8CI7AHFmH2BRCBPXAyk18GzUrqAXCTiR4ssyj0VFw/oCU8+e+RZ33AWz6KMaYbIIWxB+JSLs1bsbkeMN0AqakHvoku9oA2sAfqBvbAQdw0QArsgb25aYBUQT3QgT2gB+yBuqGcHij2UCqXDZACe2Anlw2QYg/QAOyBuoE98CL3DZDCuK4/rh/Q7oGL6U+TOvcNkJoijN8X1C48+T+g75eQDrAH/qmqAVJgDwyqaoAUe4AGYA/UDZX3QLUNkEIZPRCd5+6BahsgVUgPROwBTSijB7jpVAvGHriHvmw9wAZ4BpX1ABvgmakHtPcbRuwBTWAPULgAV9D/jKDY9YRvwvgEaurD44uQHvAol7qBW7WKluVtIHiUS7GyvA0s6CiXDnxrpQfsgbqBS7GKk/2jYHCrVlGyfxTMrVo0ALdq1Q3sgSKofh0M9oA61a+D2QM0AHugbmAPqClmSRjK2apVVQ8UsySsoK1aHdgDesCtWnUDeyCrIpeFg1u3sylyWTi3btMA7IG6gT2wuuK3hoE9sKrit4YVslWLPaAN7IG6ocKt2zmY2h4O9sDiTG0PZw/QANy6XTewBxZj9ogYVHy025LMHhEz9cBn0We6B0yfERReBLfhx0/R1YQHPx/QBPbA0VwcEwf2wNFcHBPHHjiem3MC2QPHcXdSaJjA+KfgTPQ8hhfjBzHC40mhlzJ+Xq9lK4a4PCs43AVaGTed5mZq+iOXZwWHi3AnOj2wFWNcnxYe7gTxLtBKHuamP/J+Wnh8a5irB7ZC5Yk9gPX1QuXC+usHWqGyhYvUYR0a7zboUOFCNVhnk0krZAOW7wFOvzXhom2xnEbIHizTA1wEYhWW6YFGyC6c1gOcfg9wfA80Qj7g8B7g9HuCww+haIR8wf49wOn3Cvv9k8tGyC/s7gFOv3fY3QONkH+v9MBWqB7PeqDn9FcIT//kcitUn6kHOu/T/xfWzlQy3dEHhwAAAABJRU5ErkJggg==\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n  \u003cp align=\"center\"\u003e\n    Awesome apps, services, products and communities made by Singaporeans\n    \u003cbr /\u003e\n    \u003ca href=\"https://hyperlocal.sg\"\u003e\u003cstrong\u003eGo to hyperlocal.sg »\u003c/strong\u003e\u003c/a\u003e\n    \u003cbr /\u003e\n    \u003cbr /\u003e\n    \u003ca href=\"https://github.com/abuuzayr/hyperlocal/issues\"\u003eReport Bug\u003c/a\u003e\n    ·\n    \u003ca href=\"https://github.com/abuuzayr/hyperlocal/issues\"\u003eRequest Feature\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/p\u003e\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\u003cdetails open=\"open\"\u003e\n  \u003csummary\u003eTable of Contents\u003c/summary\u003e\n  \u003col\u003e\n    \u003cli\u003e\n      \u003ca href=\"#about-the-project\"\u003eAbout The Project\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#built-with\"\u003eBuilt With\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\n      \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#environment-variables\"\u003eEnvironment Variables\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#tests\"\u003eTests\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#commands\"\u003eCommands\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#learn-more\"\u003eLearn More\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#roadmap\"\u003eRoadmap\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#contact\"\u003eContact\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#acknowledgements\"\u003eAcknowledgements\u003c/a\u003e\u003c/li\u003e\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n\u003c!-- ABOUT THE PROJECT --\u003e\n\n## About The Project\n\n[![hyperlocal.sg Screen Shot 1][product-screenshot-1]](https://hyperlocal.sg)\n\n[![hyperlocal.sg Screen Shot 2][product-screenshot-2]](https://hyperlocal.sg)\n\nIn April 2021, amidst the CoVID-19 pandemic there was a story about a retail chain (that rhymes with _nice_) and how it allegedly swindled several independent creators of their money. I felt for the creators and thought of how ultimately, the creators were at the losing end if a shop like that would have to close its stores, which it eventually did. Many of these shops already have their own web presence, but this retail chain gave them a physical space and some exposure. Then, someone started collating a list of these creators/vendors to help on [an Airtable list](https://airtable.com/shr7mnheTOXHsOsOJ/tblS3ksHjWZsLawxL) and I felt that perhaps we could do better.\n\nSo I made [hyperlocal.sg](https://hyperlocal.sg) - to sort of aggregate all these listings and help them be discovered, by means of a combined marketing, content and exposure effort.\n\n### Built With\n\nThis is a [Blitz.js](https://github.com/blitz-js/blitz) app.\n\n\u003c!-- GETTING STARTED --\u003e\n\n## Getting Started\n\nRun your app in the development mode.\n\n```\nblitz dev\n```\n\nOpen [http://localhost:3000](http://localhost:3000) with your browser to see the result.\n\n## Environment Variables\n\nEnsure the `.env.local` file has required environment variables:\n\n```\nDATABASE_URL=postgresql://\u003cYOUR_DB_USERNAME\u003e@localhost:5432/hyperlocal\n```\n\nEnsure the `.env.test.local` file has required environment variables:\n\n```\nDATABASE_URL=postgresql://\u003cYOUR_DB_USERNAME\u003e@localhost:5432/hyperlocal_test\n```\n\n## Tests\n\nRuns your tests using Jest.\n\n```\nyarn test\n```\n\nBlitz comes with a test setup using [Jest](https://jestjs.io/) and [react-testing-library](https://testing-library.com/).\n\n## Commands\n\nBlitz comes with a powerful CLI that is designed to make development easy and fast. You can install it with `npm i -g blitz`\n\n```\n  blitz [COMMAND]\n\n  dev       Start a development server\n  build     Create a production build\n  start     Start a production server\n  export    Export your Blitz app as a static application\n  prisma    Run prisma commands\n  generate  Generate new files for your Blitz project\n  console   Run the Blitz console REPL\n  install   Install a recipe\n  help      Display help for blitz\n  test      Run project tests\n```\n\nYou can read more about it on the [CLI Overview](https://blitzjs.com/docs/cli-overview) documentation.\n\n## Learn more\n\nRead the [Blitz.js Documentation](https://blitzjs.com/docs/getting-started) to learn more.\n\nThe Blitz community is warm, safe, diverse, inclusive, and fun! Feel free to reach out to us in any of our communication channels.\n\n- [Website](https://blitzjs.com/)\n- [Discord](https://discord.blitzjs.com/)\n- [Report an issue](https://github.com/blitz-js/blitz/issues/new/choose)\n- [Forum discussions](https://github.com/blitz-js/blitz/discussions)\n- [How to Contribute](https://blitzjs.com/docs/contributing)\n- [Sponsor or donate](https://github.com/blitz-js/blitz#sponsors-and-donations)\n\n\u003c!-- ROADMAP --\u003e\n\n## Roadmap\n\nSee the [open issues](https://github.com/abuuzayr/hyperlocal/issues) for a list of proposed features (and known issues).\n\n\u003c!-- CONTRIBUTING --\u003e\n\n## Contributing\n\nContributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**.\n\n1. Fork the Project\n2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the Branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n\u003c!-- LICENSE --\u003e\n\n## License\n\nDistributed under the MIT License. See `LICENSE` for more information.\n\n\u003c!-- CONTACT --\u003e\n\n## Contact\n\nMuhammad - abu.uzayr@builtforfifty.com\n\nProject Link: [https://github.com/abuuzayr/hyperlocal/](https://github.com/abuuzayr/hyperlocal/)\n\n\u003c!-- ACKNOWLEDGEMENTS --\u003e\n\n## Acknowledgements\n\n- UI Component Library by [Chakra UI](https://chakra-ui.com/)\n- Illustrations by [DrawKit](https://www.drawkit.io/)\n- Images by [Unsplash](https://unsplash.com/)\n- Selected icons by [React Icons](https://react-icons.github.io/react-icons/)\n- Secure, private email forwarding by [ForwardEmail](https://forwardemail.net/)\n- Email newsletters by [Mail Octopus](https://connoratherton.com/loaders)\n- Analytics by [Panelbear](https://kenwheeler.github.io/slick)\n- Image hosting on [Backblaze B2](https://www.backblaze.com/)\n- CDN, DNS by [Cloudflare](https://github.com/cferdinandi/smooth-scroll)\n- Database ORM by [Prisma](http://leafo.net/sticky-kit)\n- Cloud hosting by [Vercel](https://vercel.com)\n- PostgreSQL hosting by [Supabase](https://supabase.io)\n- README template from [Best README Template](https://github.com/othneildrew/Best-README-Template/)\n- Shields by [shields.io](https://shields.io/)\n- Chat widget by [Crisp](https://crisp.chat/en/)\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n\u003c!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --\u003e\n\n[contributors-shield]: https://img.shields.io/github/contributors/abuuzayr/hyperlocal.svg?style=for-the-badge\n[contributors-url]: https://github.com/abuuzayr/hyperlocal/graphs/contributors\n[forks-shield]: https://img.shields.io/github/forks/abuuzayr/hyperlocal.svg?style=for-the-badge\n[forks-url]: https://github.com/abuuzayr/hyperlocal/network/members\n[stars-shield]: https://img.shields.io/github/stars/abuuzayr/hyperlocal.svg?style=for-the-badge\n[stars-url]: https://github.com/abuuzayr/hyperlocal/stargazers\n[issues-shield]: https://img.shields.io/github/issues/abuuzayr/hyperlocal.svg?style=for-the-badge\n[issues-url]: https://github.com/abuuzayr/hyperlocal/issues\n[license-shield]: https://img.shields.io/github/license/abuuzayr/hyperlocal.svg?style=for-the-badge\n[license-url]: https://github.com/abuuzayr/hyperlocal/blob/master/LICENSE\n[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge\u0026logo=linkedin\u0026colorB=555\n[linkedin-url]: https://www.linkedin.com/in/muhammadfawwaz/\n[twitter-shield]: https://img.shields.io/twitter/url?color=555\u0026logo=twitter\u0026style=for-the-badge\u0026url=https%3A%2F%2Fhyperlocal.sg\n[twitter-url]: https://twitter.com/intent/tweet?text=Wow:\u0026url=https%3A%2F%2Fhyperlocal.sg\n[product-screenshot-1]: public/screenshot2.png\n[product-screenshot-2]: public/screenshot1.png\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabuuzayr%2Fhyperlocal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabuuzayr%2Fhyperlocal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabuuzayr%2Fhyperlocal/lists"}