Note
Projeto de Bloco: Desenvolvimento Front-end com Frameworks
O projeto escolhido pelo professor é um fórum gamificado.
Nesta plataforma o usuário poderá postar e responder tópicos, recebendo pontos e recompensas por sua participação.
O objetivo é desenvolver uma plataforma que permita que seus usuários criem e participem em tópicos de interesse.
É importante:
-
Permitir o registro de novos usuários com dados pessoais.
-
Oferecer acesso à plataforma para usuários cadastrados.
-
Permitir que usuários não cadastrados visualizem tópicos populares.
-
Criar tópicos com informações relevantes.
-
Comentar em tópicos existentes.
-
Curtir ou descurtir tópicos e comentários.
-
Atribuir pontos a cada ação do usuário.
-
Implementar um sistema de ranking para mostrar os usuários com mais pontos.
Important
Este projeto utiliza Supabase.
É necessário criar uma conta e iniciar um projeto (gratuito) para utlilizar o banco de dados e o serviço de autenticação.
Também é possível utilizar localmente ou em seu servidor fazendo self-hosting
Siga as intruções no site.
Você pode rodar o projeto localmente ou com Docker.
Tip
É recomendado rodar o projeto com Docker para evitar problemas com dependências e configurações locais.
Para rodar o projeto com Docker, você precisará ter instalado:
-
git clone https://github.com/xnatsuk/PB_24E1_5.git
-
cd PB_24E1_5
-
Crie seu próprio arquivo
.env
com suas keys do Supabase. Veja o.env.example
-
docker-compose up -d
-
client: http://localhost:3000
api docs: http://localhost:5000/docs
Para rodar o projeto localmente, você precisará ter instalado:
-
git clone https://github.com/xnatsuk/PB_24E1_5.git
-
cd PB_24E1_5
-
cd client pnpm install pnpm dev
-
cd .. cd backend poetry install --no-root
-
Para desenvolvimento:
poetry run fastapi dev src/main.py --port 5000
Para produção:
poetry run fastapi run src/main.py --port 5000
-
client: http://localhost:3000
api docs: http://localhost:5000/docs