{"id":22624038,"url":"https://github.com/mickey105/game-store-monorepo-app","last_synced_at":"2026-04-06T09:31:59.058Z","repository":{"id":267029298,"uuid":"896539888","full_name":"Mickey105/game-store-monorepo-app","owner":"Mickey105","description":"A full-stack web \u0026 mobile app built with React/NodeJS that helps you find and discover over 500,000+ video games on your device. Powered by RAWG API.","archived":false,"fork":false,"pushed_at":"2025-02-06T11:31:55.000Z","size":11327,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-29T03:15:01.343Z","etag":null,"topics":["aws-lambada","graphql","nextjs","nodejs","nx-workspace","react","react-native","serverless","styled-components","tailwindcss","typescript","yarn"],"latest_commit_sha":null,"homepage":"https://mono-game-store.netlify.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/Mickey105.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-11-30T16:27:44.000Z","updated_at":"2025-02-21T07:39:33.000Z","dependencies_parsed_at":"2024-12-07T20:33:37.424Z","dependency_job_id":null,"html_url":"https://github.com/Mickey105/game-store-monorepo-app","commit_stats":null,"previous_names":["mickey105/game-store-monorepo-app"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mickey105%2Fgame-store-monorepo-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mickey105%2Fgame-store-monorepo-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mickey105%2Fgame-store-monorepo-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mickey105%2Fgame-store-monorepo-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mickey105","download_url":"https://codeload.github.com/Mickey105/game-store-monorepo-app/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246131335,"owners_count":20728303,"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":["aws-lambada","graphql","nextjs","nodejs","nx-workspace","react","react-native","serverless","styled-components","tailwindcss","typescript","yarn"],"created_at":"2024-12-09T00:09:37.840Z","updated_at":"2025-12-30T19:50:53.840Z","avatar_url":"https://github.com/Mickey105.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://mono-game-store.netlify.app/\"\u003e\n    \u003cimg src=\"https://github.com/nphivu414/game-store-monorepo-app/blob/7ddad62ae62de05ee2b6b45c0f30b9669c25f542/game-store.jpg\"\n         alt=\"Sponsored by Evil Martians\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n    \n# Game Store Monorepo\n\nA full-stack web/mobile application that helps you find and discover over 500,000+ video games on your device. Powered by RAWG API.\n## Demo\n\n[React Single Page App on Netlify](https://mono-game-store.netlify.app/)\n\u003cbr/\u003e\n[NextJS App on Vercel (Beta)](https://mono-game-store.vercel.app/)\n\n## Authors\n\n- [@nphivu414](https://github.com/nphivu414)\n\n## Main stacks\n - [Nx Build System](https://nx.dev/)\n - [Typescript](https://www.typescriptlang.org/)\n - [ReactJS](https://reactjs.org/)\n - [React Native](https://reactnative.dev/)\n - [NextJS](https://nextjs.org/)\n - [NestJS](https://nestjs.com/)\n - [Serverless](https://www.serverless.com/)\n - [AWS Lambda](https://aws.amazon.com/lambda/)\n - [Apollo GraphQL](https://www.apollographql.com/)\n - [TailwindCSS](https://tailwindcss.com/)\n - [DaisyUI](https://daisyui.com/)\n - [Styled Components](https://styled-components.com/)\n - [React Native Elements](https://github.com/react-native-elements/react-native-elements)\n - [Styled System](https://styled-system.com/)\n - [RAWG Video Games Database API](https://rawg.io/apidocs)\n\n\n\n## Screenshots\n ### Web App\n| Explore | Game Details | Games | Genres |\n| :-------- | :------- | :------------------------- | :------------------------- |\n| ![Web App Screenshot](https://github.com/nphivu414/game-store-monorepo-app/blob/master/assets/mono-game-store1.png) | ![Web App Screenshot](https://github.com/nphivu414/game-store-monorepo-app/blob/master/assets/mono-game-store2.png) | ![Web App Screenshot](https://github.com/nphivu414/game-store-monorepo-app/blob/master/assets/mono-game-store3.png) | ![Web App Screenshot](https://github.com/nphivu414/game-store-monorepo-app/blob/master/assets/mono-game-store4.png) |\n\n  ### Native App\n  | Android | iOS |\n| :-------- | :------- |\n| ![Android App Screenshot](https://github.com/nphivu414/game-store-monorepo-app/blob/master/assets/mono-game-store-android.png) | ![iOS App Screenshot](https://github.com/nphivu414/game-store-monorepo-app/blob/master/assets/mono-game-store-ios.png) |\n  \n## Installation\n\n1. Clone the repo\n   ```sh\n   git clone https://github.com/nphivu414/game-store-monorepo-app.git\n   ```\n2. Install dependencies\n   ```sh\n   yarn install\n   ```\n3. Install serverless globally\n   ```sh\n   npm install -g serverless\n   ```\n    \n## Run Locally\n\n1. Go to the project directory\n\n```bash\n  cd game-store-monorepo-app\n```\n\n2. Start the backend server\n\n```bash\n  yarn start:backend\n```\n\n3. Start the web app\n \n    - React Single Page App\n        ```bash\n        yarn start:web\n        ```\n    - NextJS App (beta)\n        ```bash\n        yarn start:next\n        ```\n\n4. Start the iOS app (beta)\n\n- If you're not using M1, run \n```bash\n   yarn start:ios:install\n```\n\n- If you're on M1, first install the x86 version of the ffi gem using ```sudo arch -x86_64 gem install ffi``` then run ```yarn start:ios:install:m1``` (see [here](https://github.com/CocoaPods/CocoaPods/issues/10723#issuecomment-864408657))\n\n- Use yarn start:ios for subsequent starts (it's faster since it skips pod install and uses xcode's cache)\n\n5. Start the Android app (beta)\n\n- Run yarn start:android and the app should appear in the Android simulator\n\n## GRAPHQL API Reference\n\n#### Get a list of games\n\n\n```\nquery allGames {\n    allGames(page: 1, pageSize: 5) {\n        nextPage\n        results {\n            id\n            name\n            backgroundImage\n            rating\n        }\n    }\n}\n```\n\n| Parameter | Type     | Description                |\n| :-------- | :------- | :------------------------- |\n| `page` | `number` | A page number within the paginated result set. |\n| `pageSize` | `number` | Number of results to return per page. |\n| `date` | `string` | Filter by a release date, for example: `2010-01-01,2018-12-31`. |\n| `genres` | `string` | Filter by genres, for example: `4,51` or `action,indie`. |\n| `tags` | `string` | Filter by tags, for example: `31,7` or `singleplayer,multiplayer`. |\n| `publishers` | `string` | Filter by publishers, for example: `354,20987` or `electronic-arts,microsoft-studios`. |\n| `search` | `string` | Search by names |\n\n#### Get a list of games that are part of the same series.\n\n```\nquery gameSeries {\n    gameSeries(page: 1, pageSize: 5) {\n        nextPage\n        results {\n            id\n            name\n            backgroundImage\n            rating\n        }\n    }\n}\n```\n\n| Parameter | Type     | Description                |\n| :-------- | :------- | :------------------------- |\n| `page` | `number` | A page number within the paginated result set. |\n| `pageSize` | `number` | Number of results to return per page. |\n| `id` | `number` | Game ID. |\n\n#### Get details of the game.\n\n```\nquery gameDetails {\n    gameDetails(id: 3498) {\n        id\n        name\n        backgroundImage\n        rating\n        platforms {\n            platform {\n            id\n            name\n            image\n            imageBackground\n            }\n            releasedAt\n        }\n    }\n}\n```\n\n| Parameter | Type     | Description                |\n| :-------- | :------- | :------------------------- |\n| `id` | `number` | Game ID. |\n\n#### Get a list of video game genres.\n\n```\nquery allGenres {\n    allGenres(page: 1, pageSize: 10) {\n        nextPage\n        results {\n            id\n            name\n            thumbnailImage\n            games {\n                id\n                name\n            }\n        }\n    }\n}\n```\n\n| Parameter | Type     | Description                |\n| :-------- | :------- | :------------------------- |\n| `page` | `number` | A page number within the paginated result set. |\n| `pageSize` | `number` | Number of results to return per page. |\n\n#### Get a list of video game tags.\n\n```\nquery allTags {\n    allTags(page: 1, pageSize: 10) {\n        nextPage\n        results {\n            id\n            name\n            thumbnailImage\n            games {\n                id\n                name\n            }\n        }\n    }\n}\n```\n\n| Parameter | Type     | Description                |\n| :-------- | :------- | :------------------------- |\n| `page` | `number` | A page number within the paginated result set. |\n| `pageSize` | `number` | Number of results to return per page. |\n\n#### Get a list of video game publishers.\n\n```\nquery allPublishers {\n    allPublishers(page: 1, pageSize: 10) {\n        nextPage\n        results {\n            id\n            name\n            thumbnailImage\n            games {\n                id\n                name\n            }\n        }\n    }\n}\n```\n\n| Parameter | Type     | Description                |\n| :-------- | :------- | :------------------------- |\n| `page` | `number` | A page number within the paginated result set. |\n| `pageSize` | `number` | Number of results to return per page. |\n\n  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmickey105%2Fgame-store-monorepo-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmickey105%2Fgame-store-monorepo-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmickey105%2Fgame-store-monorepo-app/lists"}