Aplicativo desenvolvido em React Native com Expo para apoiar a educação por meio de uma rede de monitoria colaborativa entre alunos.
Muitos estudantes têm dificuldade em determinadas disciplinas e nem sempre conseguem pagar por aulas particulares. Ao mesmo tempo, existem alunos que dominam alguns conteúdos e poderiam ajudar colegas da própria escola, faculdade ou comunidade.
O EstudaJunto resolve esse problema conectando alunos que precisam de monitoria com alunos que podem oferecer ajuda.
Permitir que alunos cadastrem pedidos de ajuda ou ofertas de monitoria, com informações de matéria, descrição, disponibilidade e contato.
Frase principal do app:
Aprender fica mais fácil quando um aluno ajuda o outro.
- React Native
- Expo
- React Navigation
- SQLite com expo-sqlite
- Hooks: useState, useCallback e useFocusEffect
- JavaScript
| Requisito | Como foi atendido |
|---|---|
| Framework React Native | Projeto feito com React Native usando Expo |
| Navegação | Uso de React Navigation com Native Stack |
| Persistência de dados | Banco local SQLite com expo-sqlite |
| CRUD | Criar, listar, atualizar e excluir cadastros |
| Interface | Layout responsivo, cards, filtros, busca e botões claros |
| Código e estrutura | Componentes separados por telas, banco e componentes reutilizáveis |
| Versionamento | Projeto preparado para Git/GitHub |
- Mostra o nome do app.
- Explica o impacto social.
- Exibe resumo dos registros.
- Possui botões para acessar lista, criar pedido de ajuda ou oferecer monitoria.
- Lista todos os registros cadastrados.
- Permite busca por aluno, matéria, tipo ou descrição.
- Possui filtros por status: Todos, Aberto e Resolvido.
- Cria um novo pedido de monitoria ou oferta de monitoria.
- Valida campos obrigatórios.
- Salva os dados no SQLite.
- Exibe todas as informações do cadastro.
- Permite marcar como resolvido ou aberto.
- Permite editar o cadastro.
- Permite excluir o cadastro.
- Carrega os dados cadastrados.
- Permite atualizar as informações no banco.
| Operação | Local no app |
|---|---|
| Create | Tela Novo Cadastro |
| Read | Tela Pedidos e Monitorias + Tela Detalhes |
| Update | Tela Editar Cadastro + alteração de status |
| Delete | Botão Excluir Cadastro na tela Detalhes |
EstudaJunto/
├── App.js
├── app.json
├── package.json
├── README.md
├── APRESENTACAO.md
└── src/
├── components/
│ ├── AppButton.js
│ ├── EmptyState.js
│ ├── Field.js
│ ├── PedidoCard.js
│ └── StatCard.js
├── database/
│ └── database.js
├── screens/
│ ├── DetalhePedidoScreen.js
│ ├── FormPedidoScreen.js
│ ├── HomeScreen.js
│ └── PedidosScreen.js
└── theme.jsNo terminal, dentro da pasta do projeto:
npm install
npx expo start --goDepois, abra o aplicativo no Expo Go pelo QR Code.
Crie um projeto Expo limpo e copie os arquivos App.js e a pasta src deste projeto para dentro dele:
npx create-expo-app@latest EstudaJunto --template blank
cd EstudaJunto
npx expo install expo-sqlite react-native-screens react-native-safe-area-context
npm install @react-navigation/native @react-navigation/native-stackDepois copie:
App.js
src/E rode:
npx expo start --goEste projeto foi pensado para rodar no Expo Go, sem necessidade de development build. Se o terminal estiver em modo development build, pressione s para alternar para Expo Go ou rode:
npx expo start --go