{"id":15317012,"url":"https://github.com/mateusfg7/happy","last_synced_at":"2025-04-15T02:22:05.065Z","repository":{"id":103693458,"uuid":"303680255","full_name":"mateusfg7/Happy","owner":"mateusfg7","description":":child: :girl: Plataforma de cadastro e consulta de orfanatos em uma região. Feito durante a Next Level Week #3 da @Rocketseat, durante os dias 12 e 16 de outubro.","archived":false,"fork":false,"pushed_at":"2020-10-17T13:51:38.000Z","size":2985,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-28T14:11:08.976Z","etag":null,"topics":["axios","expo","happy","leaflet","mapbox","mvc","nextlevelweek","nlw-3","node","openstreetmap","orfanato","orm","react","react-native","sqlite","typeorm","typescript","yup"],"latest_commit_sha":null,"homepage":"","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/mateusfg7.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":"2020-10-13T11:26:46.000Z","updated_at":"2021-04-02T07:05:52.000Z","dependencies_parsed_at":"2024-04-28T13:47:13.018Z","dependency_job_id":null,"html_url":"https://github.com/mateusfg7/Happy","commit_stats":{"total_commits":127,"total_committers":1,"mean_commits":127.0,"dds":0.0,"last_synced_commit":"4a1eecde57c7d30343ce0d9aaee8fdf19485627b"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateusfg7%2FHappy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateusfg7%2FHappy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateusfg7%2FHappy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateusfg7%2FHappy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mateusfg7","download_url":"https://codeload.github.com/mateusfg7/Happy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248991803,"owners_count":21194939,"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":["axios","expo","happy","leaflet","mapbox","mvc","nextlevelweek","nlw-3","node","openstreetmap","orfanato","orm","react","react-native","sqlite","typeorm","typescript","yup"],"created_at":"2024-10-01T08:55:21.308Z","updated_at":"2025-04-15T02:22:05.056Z","avatar_url":"https://github.com/mateusfg7.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# ![](.github/assets/logo.png)\n\n**Happy** é uma plataforma de cadastro e consulta de orfanatos em uma determinada região.\nO projeto foi desenvolvido durante a terceira edição da _Next Level Week_, realizada pela [Rocketseat](https://github.com/Rocketseat), entre os dias 12 e 16 de Outubro de 2020.\n_professor [@diego3g](https://github.com/diego3g)_\n\n![](https://github.com/rocketseat-education/nlw-03-omnistack/blob/master/.github/happy.png?raw=true)\n\n\n![mapbox](https://img.shields.io/badge/mapbox-000?\u0026logoColor=FFF\u0026style=for-the-badge\u0026logo=mapbox)![expo](https://img.shields.io/badge/expo-000020?\u0026logoColor=FFF\u0026style=for-the-badge\u0026logo=expo)![sqlite](https://img.shields.io/badge/sqlite-003b57?\u0026logoColor=FFF\u0026style=for-the-badge\u0026logo=sqlite)![typescript](https://img.shields.io/badge/typescript-007acc?\u0026logoColor=FFF\u0026style=for-the-badge\u0026logo=typescript)![react](https://img.shields.io/badge/react-61dafb?\u0026logoColor=000\u0026style=for-the-badge\u0026logo=react)![openstreetmap](https://img.shields.io/badge/openstreetmap-7ebc6f?\u0026logoColor=FFF\u0026style=for-the-badge\u0026logo=openstreetmap)![node](https://img.shields.io/badge/node.js-33933?\u0026logoColor=FFF\u0026style=for-the-badge\u0026logo=node.js)![leaflet](https://img.shields.io/badge/leaflet-199900?\u0026logoColor=FFF\u0026style=for-the-badge\u0026logo=leaflet)\n\n---\n\n\n\u003c/div\u003e\n\n# índice\n\n- [Layout](#black_nib-layout)\n  - [Web](#web-)\n  - [Mobile](#mobile-)\n- [Tecnologias](#technologist-tecnologias)\n  - [Backend](#globe_with_meridians-backend)\n  - [Web](#computer-web)\n  - [Mobile](#iphone-mobile)\n- [Iniciar Projeto](#arrow_forward-iniciando-o-projeto)\n  - [Backend](#globe_with_meridians-backend-1)\n  - [Web](#computer-web-1)\n  - [Mobile](#iphone-mobile-1)\n\n\n---\n\n# \t:black_nib: Layout\n\n## WEB [![Figma](https://img.shields.io/badge/figma-000?\u0026logoColor=FFF\u0026style=for-the-badge\u0026logo=figma)](https://www.figma.com/file/mDEbnoojksG4w8sOxmudh3/Happy-Web)\n\n\n| HOME                             | MAPA                             |\n| -------------------------------- | -------------------------------- |\n| ![](.github/assets/web/Home.png) | ![](.github/assets/web/Mapa.png) |\n\n| PERFIL                             | DADOS                             |\n| ---------------------------------- | --------------------------------- |\n| ![](.github/assets/web/Perfil.png) | ![](.github/assets/web/Dados.png) |\n\n## MOBILE [![Figma](https://img.shields.io/badge/figma-000?\u0026logoColor=FFF\u0026style=for-the-badge\u0026logo=figma)](https://www.figma.com/file/X27FfVxAgy9f5IFa7ONlph/Happy-Mobile)\n\n| MAPA                                | PERFIL                                |\n| ----------------------------------- | ------------------------------------- |\n| ![](.github/assets/mobile/Mapa.png) | ![](.github/assets/mobile/Perfil.png) |\n\n\n---\n\n# :technologist: Tecnologias\n\n## :globe_with_meridians: Backend\n\nO _back-end_ da aplicação foi desenvolvido com a linguagem/superset [Typescript](https://www.typescriptlang.org/) usando o framework [NodeJS](https://nodejs.org/en/). O banco de dados escolhido foi o [SQLite](https://sqlite.org/index.html) pela facilidade de configuração, para criar tabelas e adicionar novas colunas foi usado o ORM [typeorm](https://typeorm.io/#/). Foi usado também o pacote [Yup]() para validação de requests.\n\n## :computer: Web\n\nA versão _web_ da aplicação foi desenvolvida com a linguagem/superset [Typescript](https://www.typescriptlang.org/) usando o framwork [ReactJS](https://reactjs.org/). O _mapa_ foi feito com a biblioteca [Leaflet](https://leafletjs.com/) e as imagens usando a api do [MapBox](https://www.mapbox.com/) (Tambem foi testada a api grátis do [OpenStreetMap](https://www.openstreetmap.org/)). As chamadas api ao backend foram feitas com o [axios](https://www.npmjs.com/package/axios).\n\n## :iphone: Mobile\n\nA versão _mobile_ da aplicação foi desenvolvido com a linguagem/superset [Typescript](https://www.typescriptlang.org/) usando o framework [React Native](https://reactnative.dev/) e as ferramentas do [Expo](https://expo.io/).\n\n---\n\n# :arrow_forward: Iniciando o projeto\n\n## :globe_with_meridians: Backend\n\nPara iniciar o projeto sera necessário ter instalado o [NodeJS](https://nodejs.org/en/) e [npm](https://www.npmjs.com/)/[yarn](https://yarnpkg.com/)\n\n### instalar dependencias\n\n_yarn_\n```\n$ yarn install\n```\n_npm_\n```\n$ npm install\n```\n\n### configurações do banco de dados\n\n_yarn_\n```\n$ yarn typeorm migration:run\n```\n_npm_\n```\n$ npm typeorm migration:run\n```\n\n### iniciar servidor de desenvolvimento\n\n_yarn_\n```\n$ yarn dev\n```\n_npm_\n```\n$ npm dev\n```\n\n## :computer: Web\n\nPara iniciar o projeto sera necessário ter instalado o [NodeJS](https://nodejs.org/en/), [ReactJS](https://reactjs.org/) e [npm](https://www.npmjs.com/)/[yarn](https://yarnpkg.com/)\n\n### instalar dependencias\n\n_yarn_\n```\n$ yarn install\n```\n_npm_\n```\n$ npm install\n```\n\n### iniciar servidor de desenvolvimento\n\n_yarn_\n```\n$ yarn start\n```\n_npm_\n```\n$ npm start\n```\n\n### compilar para produção\n\n_yarn_\n```\n$ yarn build\n```\n_npm_\n```\n$ npm build\n```\n\u003e os arquivos estáticos para web ficarão salvos na pasta `public`\n\n## :iphone: Mobile\n\nPara iniciar o projeto sera necessário ter instalado o [React Native](https://reactnative.dev/), [Expo](https://expo.io/) e [npm](https://www.npmjs.com/)/[yarn](https://yarnpkg.com/). Será necessário tambem ter um cliente do expo instalado em um celular físico ou em um emulador.\n\n### instalar dependencias\n\n_yarn_\n```\n$ yarn install\n```\n_npm_\n```\n$ npm install\n```\n\n### iniciar cliente de desenvolvimento\n\n```\n$ expo start\n```\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n[MIT License](LICENSE)\n\n\u003c/div\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmateusfg7%2Fhappy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmateusfg7%2Fhappy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmateusfg7%2Fhappy/lists"}