Skip to content

Repository files navigation

Este projeto está em desenvolvimento

A versão desta branch é estável e está pronta para avaliação

[ Ver também: Perenne-Frontend ]


**Informação para os avaliadores**

A branch mais atual (e usada no deploy) é a master.

Por favor, visitem e testem nosso site aqui!

Informações sobre o deploy:

  • Frontend está hospedado no Vercel.
  • Backend e banco de dados estão hospedados no Render.

Contas para testes:

Admin: E-mail: admin@projetos3.com senha: testeplataforma@

Usuário: E-mail: usuario@projetos3.com senha: testeplataforma@

Obs: FTO é uma brincadeira interna para diferenciar os DTOs de saída dos de entrada. DTO seria Dentro Transfer Object (entrada), enquanto FTO seria Fora Transfer Object (saída).


Perenne | Backend

Perenne é uma plataforma de comunidade modular e escalável para gestão de grupos, mensagens em tempo real, feed de notícias, eventos e notificações.

Funcionalidades prontas para uso (Backend):

  • Chat em tempo real público e privado com histórico persistente.
  • Feed de postagens públicas por grupo com reação de like.
  • Moderação de usuários: silenciar, expulsar e bloquear.
  • Autenticação e gerenciamento de usuários (registro, login, perfis).
  • Criação de grupos com papéis (admin, moderador, membro) e controle de permissões.
  • Chat em tempo real por grupo com WebSockets (SignalR).

No futuro, planejamos expandir o Perenne com:

  • Mais reações a mensagens e enquetes com votos anônimos ou múltiplos.
  • Criação de eventos com edição, inscrição e lembretes.
  • Sistema de notificações (menções, alertas e lembretes configuráveis).
  • Postagens multimídia com upload de arquivos (imagens, vídeos, documentos).
  • Upload de arquivos como documentos de texto, imagens e PDF diretamente no chat.
  • Sistema de tags, filtros por assunto e organização temática.
  • Histórico de ações e logs de moderação por grupo.
  • Gamificação com quizzes, conquistas, níveis e badges.

Arquitetura e Tecnologias

  • .NET 9.0: framework principal da aplicação.
  • Entity Framework Core: ORM para abstração e persistência de dados.
  • PostgreSQL: banco de dados relacional.
  • SignalR: para comunicação em tempo real via WebSockets.
  • Autenticação JWT: segura, com suporte a roles e claims.
  • OpenAPI: documentação automática das APIs.
  • CORS configurável: suporte a ambientes com múltiplos frontends.

Pré-requisitos

Antes de começar, você precisará ter instalado:

Configuração | Instalação

Obs: A configuração dependerá do ambiente de deploy. Segue aqui um tutorial para rodar a API localmente para fins de teste.

  1. Clone o repositório:
git clone https://github.com/filipe-ms/Perenne-Backend
  1. Comente esta linha no Program.cs:
app.UseHttpsRedirection();
  1. Configure o appsettings.json com as informações de conexão do banco de dados nesta linha:
"DefaultConnection": "Host=localhost;Port=5432;Database=database;Username=postgres;Password=Password1234@"
  1. Restaure pacotes e compile o projeto:
dotnet restore
dotnet build
  1. Faça a migração do banco de dados:
dotnet ef migrations add nome_da_migração
dotnet ef database update
  1. Execute a aplicação:
dotnet run

Colaboradores

About

Backend do projeto Perenne

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages