Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pedrohvfernandes/nlw-copa-2022
Projeto desenvolvido durante a Next Level Week Copa, na trilha Ignite.
https://github.com/pedrohvfernandes/nlw-copa-2022
expo fastify jwt nextjs node prisma react react-native sqlite tailwindcss ts zod
Last synced: 6 days ago
JSON representation
Projeto desenvolvido durante a Next Level Week Copa, na trilha Ignite.
- Host: GitHub
- URL: https://github.com/pedrohvfernandes/nlw-copa-2022
- Owner: PedrohvFernandes
- Created: 2022-11-05T00:54:19.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2022-11-07T01:56:55.000Z (about 2 years ago)
- Last Synced: 2024-11-19T22:48:34.199Z (2 months ago)
- Topics: expo, fastify, jwt, nextjs, node, prisma, react, react-native, sqlite, tailwindcss, ts, zod
- Language: TypeScript
- Homepage:
- Size: 4.55 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NLW-Copa 2022 - Rocketseat
## Sobre:
### Quer fazer apostas com seus amigos ? Pois bem, ai vem o app a onde vocês podem criar bolões e chamar seus amigos para participar através de um codigo gerado no momento da criação no bolão. Vocês terão total controle de quem esta participando, quem é dono do bolão, pra qual data é o jogo, o nome do bolão
## 🔖 Layout, prototipo e demonstração de como sera feito a aplicação
- [Prototipo]()
## 🌐 Demonstração do app na web e mobile:
### Web:
### Mobile:
## ✨Tecnologias:
### Principais Stacks:
- React
- ReactNative
- Expo
- TypeScript
- Node
- NextJs
- fastify
- Sqlite
- JWT(Geração de token)
- Axios### Secundarias Stacks:
- TailwindCSS
- Prisma(ORM)
- country-list
- Phosphor icons
- native-base
- country-list
- dayjs
- zod## 🛠️ Features:
- Cadastro de bolões sem um usuario pela web / com usuario pelo mobile
- Listagens dos bolões
- Auth com o google
- Compartilhar o codigo do bolão para conseguir participar## 🛠️ Futuras Features e Atualizações:
## Getting started
#### Para clonar o projeto e abrir na pasta raiz dele.
```
git clone https://github.com/PedrohvFernandes/nlw-copa-2022
cd nlwcopamobile - para a aplicação Mobile
cd web - para a aplicação Web
cd server - para a aplicação Server
```#### Inicie o comando abaixo no terminal para instalar as dependencias em cada uma das aplicações
```
npm install
```
### Mobile:#### Axios para mobile: src/services/api.ts alterar a url da API localmente
```
baseURL: 'http://IPDASUAMAQUINA:3333'
cmd>ipconfig>ipv4 / cd nlwcopamobile expo start>Metro waiting on exp://192.168.15.111:19000
```#### CLIENT_ID no .env.example: CLIENT_ID=EXAMPLE.apps.googleusercontent.com --> ID do cliente OAuth no console da google
```
https://console.cloud.google.com/apis/credentials?project=teak-runner-367617
Apos fazer o ID, na raiz da pasta nlwcopamobile -> cd nlwcopamobile>new file> .env>CLIENT_ID=EXAMPLE.apps.googleusercontent.com
```### Server:
#### DATABASE_URL="file:./dev.db" variavel de embiente(.env na raiz da aplicação web) pro prisma conseguir acessar o banco de dados. Nesse projeto foi utilizado o sqlite localmente, por conta disso não tem restrição de compartilhar, mas caso usar um serviço pro banco de dados / um banco de dados real NÃO SUBIR O
.ENV PARA O GITHUB
```
cd web>new file>.env>DATABASE_URL="file:./dev.db"
```#### no src/server.ts comente //0.0.0.0 se for usar o web e caso for usar o android pra ver a interface mobile descomente 0.0.0.0
```
// Para a web
await fastify.listen({
port: 3333,
// host: '0.0.0.0'
})
// Para mobile
await fastify.listen({
port: 3333,
host: '0.0.0.0'
})
```### Web, mobile e server:
#### Inicie o comando abaixo no terminal para ver a interface localmente(Localhost:${PORTA}) server e web
```
npm run dev 1°no server
npm run dev 2°na web
ex para web apos o comando: http://localhost:3000 > colar em um navegador e verá a interface da pagina
```#### Inicie o comando abaixo no terminal para ver a interface localmente(Localhost:${PORTA}) mobile
```
expo start
Usar o expo go para escanear qrcode no terminal e ver a interface / usar o android studio
```## 👨💻 Autor:
- Linkedin: https://www.linkedin.com/in/pedro-henrique-vieira-fernandes
- Git: https://github.com/PedrohvFernandes
- Instagram: pedro17fernandes
- portfolio: PedrohvFernandes.github.io