Skip to content

fórum Fullstack com Backend em PHP/Laravel e Frontend em React.

Notifications You must be signed in to change notification settings

duarte-dot/g1learn-fullstack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fórum App

Este é um projeto que combina o backend em PHP utilizando o framework Laravel e o frontend em React, usando também o banco de dados MySQL. O projeto foi desenvolvido com o objetivo de concluir o desafio da G1learn.

Todo o app está conteinerizado com o Docker 🐋!

Todas as informações, como posts criados, comentários e usuários registrados serão guardados no banco de dados.

Configuração do Ambiente

Antes de começar a usar o projeto, é necessário configurar o ambiente de desenvolvimento. Siga as etapas abaixo para configurar o ambiente necessário. (É bem rapidinho)

Instalação e uso

1. Clone o repositório do projeto:

exemplo: git clone git@github.com:duarte-dot/g1learn-fullstack.git

2. Configure as variáveis de ambiente do backend:

modifique o arquivo env.example pasta backend/env.example para ".env" (o arquivo deve ficar assim):

Tela de login

3. Instale as dependências:

rode os comandos:

cd frontend && npm i && cd .. - instala as dependências do frontend

cd backend && composer i && cd .. - instala as dependências do backend

4. Inicie o projeto usando docker-compose:

na pasta do projeto, abra um terminal e utilize o comando docker-compose up -d

5. Execute as migrações e semeie o banco de dados:

utilize o comando php artisan migrate && php artisan db:seed

caso ele peça permissão, conceda provavelmente digitando "yes" no terminal.

ele rodará os dois comandos à seguir, juntos, e isso nos permitirá preencher nosso banco de dados com alguns dados fictícios:

Tela de login Tela de login

6. Acesse o projeto!

se você seguiu todas as etapas corretamente, poderá acessar o projeto através da rota http://localhost:3000/

Informações sobre o projeto:

Prints:

Tela de login:

Tela de login

Tela de registro:

Tela de registro

Home:

Home

Criar uma discussão:

Home

Tela de usuários:

Home

Tela de um post (discussão):

Home

Comentários de um post:

Home

Editando um comentário:

Home

Comentário editado:

Home

É possível editar e deletar seus próprios posts:

Home

Edição do post:

Home

Versões mobile:

Home Home Home Home Home Home

Api:

Foi criada uma API para integração com o Frontend com os seguintes Controllers:

Home

Frontend:

O Frontend foi desenvolvido em React com a seguinte estrutura:

Home Home

Rotas:

Você pode tentar acessar as rotas via algum aplicativo de requisição. Há também a extensão ThunderClient do VSCode, mas eu recomendo o Insomnia:

Sistemas de CRUD:

Home

Adicionais

Pretendo continuar trabalhando no projeto e adicionando mais features. Se você tem alguma sugestão, Não deixe de me informar! (Ou, fique à vontade para contribuir e adicionar)

Celular / Whatsapp: (21) 9 7568-1618

Email: gabrieldvr@outlook.com

Linkedin: https://www.linkedin.com/in/gabriel-duarte-dev/

Features que ainda estou pensando em adicionar:

  • Criação de categorias através do Front-End. (Já é possível através das rotas com requisições)
  • Fotos de perfil para os usuários
  • Testes unitários