{"id":20407228,"url":"https://github.com/lissone/nlw-heat-impulse","last_synced_at":"2026-04-02T02:49:49.629Z","repository":{"id":110197385,"uuid":"420283502","full_name":"Lissone/nlw-heat-impulse","owner":"Lissone","description":"Website and messaging app to share with the community your expectations for the DoWhile 2021 event.","archived":false,"fork":false,"pushed_at":"2021-12-04T19:54:50.000Z","size":1630,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-15T12:21:21.370Z","etag":null,"topics":["autentication","expo","monorepo","nextjs","nodejs","react","react-native","rocketseat","socket-io","sqlite","typescript"],"latest_commit_sha":null,"homepage":"","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/Lissone.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":"2021-10-23T01:16:38.000Z","updated_at":"2023-04-11T01:46:15.000Z","dependencies_parsed_at":"2023-07-23T14:01:03.518Z","dependency_job_id":null,"html_url":"https://github.com/Lissone/nlw-heat-impulse","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lissone%2Fnlw-heat-impulse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lissone%2Fnlw-heat-impulse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lissone%2Fnlw-heat-impulse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lissone%2Fnlw-heat-impulse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Lissone","download_url":"https://codeload.github.com/Lissone/nlw-heat-impulse/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241951980,"owners_count":20047902,"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":["autentication","expo","monorepo","nextjs","nodejs","react","react-native","rocketseat","socket-io","sqlite","typescript"],"created_at":"2024-11-15T05:22:15.906Z","updated_at":"2025-12-02T19:02:48.928Z","avatar_url":"https://github.com/Lissone.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n  \u003cimg alt=\"DoWhile 2021 logo\" src=\"./packages/web/src/assets/logo.svg\" width=\"350px\"\u003e\n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#description\"\u003eDescription\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;|\u0026nbsp;\u0026nbsp;\u0026nbsp;\n  \u003ca href=\"#requirements\"\u003eRequirements\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;|\u0026nbsp;\u0026nbsp;\u0026nbsp;\n  \u003ca href=\"#technologies\"\u003eTechnologies\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;|\u0026nbsp;\u0026nbsp;\u0026nbsp;\n  \u003ca href=\"#layout\"\u003eLayout\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;|\u0026nbsp;\u0026nbsp;\u0026nbsp;\n  \u003ca href=\"#usage\"\u003eUsage\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;|\u0026nbsp;\u0026nbsp;\u0026nbsp;\n  \u003ca href=\"#demonstration\"\u003eDemonstration\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr /\u003e\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/static/v1?label=license\u0026message=MIT\" alt=\"License\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/repo-size/Lissone/nlw-heat-impulse\" alt=\"Repo size\" /\u003e\n  \u003cimg src=\"https://img.shields.io/github/languages/top/Lissone/nlw-heat-impulse\" alt=\"Top lang\" /\u003e\n  \u003cimg src=\"https://img.shields.io/github/stars/Lissone/nlw-heat-impulse\" alt=\"Stars repo\" /\u003e\n  \u003cimg src=\"https://img.shields.io/github/forks/Lissone/nlw-heat-impulse\" alt=\"Forks repo\" /\u003e\n  \u003cimg src=\"https://img.shields.io/github/issues-pr/Lissone/nlw-heat-impulse\" alt=\"Pull requests\" \u003e\n  \u003cimg src=\"https://img.shields.io/github/last-commit/Lissone/nlw-heat-impulse\" alt=\"Last commit\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/Lissone/nlw-heat-impulse/issues\"\u003eReport bug\u003c/a\u003e\n  ·\n  \u003ca href=\"https://github.com/Lissone/nlw-heat-impulse/issues\"\u003eRequest feature\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cbr /\u003e\n\n## Description\n\nWebsite and messaging app to share with the community your expectations for the DoWhile 2021 event, organized by Rocketseat. \n\nDeveloped at NLW Heat on the 2021 impulse trail, developed by Dani Leão on October 17th to 24th, 2021.\n\n## Requirements\n\n- [Nodejs](https://nodejs.org/en/)\n- [Npm](https://www.npmjs.com/)\n- [Expo](https://expo.dev/)\n- [Yarn](https://yarnpkg.com/)\n\n## Technologies\n\n### Backend (Api)\n\n- Nodejs\n- Typescript\n- Express\n- Prisma\n- Socket.io\n- Sqlite\n\n### Web\n\n- React\n- Vite\n- Typescript\n- Sass\n- Socket.io\n- ESLint (Airbnb config)\n\n### Mobile\n\n- React Native\n- Expo\n- Typescript\n- StyleSheet\n- AsyncStorage\n- Socket.io\n- Expo Auth Session\n- Moti\n\n## Layout\n\nYou can view the project layout via this \u003ca href=\"https://www.figma.com/file/7HXNlFooVG8OvwJCIAEsRb/%5BNLW-Heat---Mission%3A-Impulse%5D-DoWhile2021?node-id=2%3A3\" target=\"_blank\"\u003elink\u003c/a\u003e.\n\n## Usage\n\nYou can clone it on your pc using the command:\n\n```bash\ngit clone https://github.com/Lissone/nlw-heat-impulse.git\ncd nlw-heat-impulse\n```\n\nInstall dependencies using:\n\n```bash\nyarn\n#or\nnpm install\n\n# .\\packages\\mobile\nyarn\n#or\nnpm install\n#or\nexpo install\n```\n\nFirst of all, you must create an OAuth application for each front-end project in github for authentication. Follow the github \u003ca href=\"https://docs.github.com/en/developers/apps/building-oauth-apps/creating-an-oauth-app\" target=\"_blank\"\u003edocumentation\u003c/a\u003e and add this data in the fields:\n\n```bash\n# WEB APPLICATION\nApplication name = NLW Heat Impulse (Web)\nHomepage URL = http://localhost:5000\nAuthorization callback URL = http://localhost:3000\n\n# MOBILE APPLICATION\nApplication name = NLW Heat Impulse (App)\nHomepage URL = https://auth.expo.io/(your_expo_id)/nlwheatmobile\nAuthorization callback URL = https://auth.expo.io/(your_expo_id)/nlwheatmobile\n```\n\nNow you can get the GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET of both applications.\n\nNeed to add environment variables to projects:\n\n```bash\n# .\\packages\\api\\.env\n\n# DEFAULT\nPORT=5000\n\n# GITHUB OAUTH\n# You can only choose one project to authenticate with github\nGITHUB_CLIENT_ID=\nGITHUB_CLIENT_SECRET=\n\n# JWT\nJWT_SECRET= #Anything\n```\n\n```bash\n# .\\packages\\web\\.env.local\n\n# DEFAULT\nVITE_BASE_URL_API=http://localhost:5000\n\n# GITHUB OAUTH\nVITE_GITHUB_CLIENT_ID=\n```\n\n```bash\n# .\\packages\\mobile\\.env\n\n# DEFAULT\nBASE_URL_API=http://(your_machine_ip_address):5000\n\n# GITHUB OAUTH\nGITHUB_CLIENT_ID=\n```\n\nRun api:\n\n```bash\n# To create a migration with prisma:\n\ncd .\\packages\\api\\\nyarn prisma migrate dev\n```\n\n```bash\nyarn dev\n#or\nnpm run dev\n```\n\n```bash\n# To open prisma studio to manage and view your database:\n\nyarn prisma studio\n```\n\nRun web:\n\n```bash\ncd .\\packages\\web\\\nyarn dev\n#or\nnpm run dev\n```\n\nRun mobile:\n\n```bash\ncd .\\packages\\mobile\\\nyarn start\n#or\nnpm run start\n#or\nexpo start\n```\n\n## Demonstration\n\n\u003cimg src=\"./.github/web-home-demo.png\" alt=\"Home web\" /\u003e\n\u003cimg src=\"./.github/mobile-home-demo.png\" alt=\"Mobile web\" /\u003e\n\n## License\n\nDistributed under the MIT License. See `LICENSE` for more information.\n\n\u003ch4 align=\"center\"\u003e\n  Made with ❤️ by \u003ca href=\"https://github.com/Lissone\" target=\"_blank\"\u003eLissone\u003c/a\u003e\n\u003c/h4\u003e\n\n\u003chr /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flissone%2Fnlw-heat-impulse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flissone%2Fnlw-heat-impulse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flissone%2Fnlw-heat-impulse/lists"}