Sistema de diário pessoal digital com gerenciamento de tarefas, desenvolvido em .NET 8.0, seguindo princípios de Clean Architecture e DDD.
- Cadastro e autenticação
- Perfil personalizado
- Upload de fotos
- Criação e edição de entradas
- Sistema de reflexões - WIP
- Categorização por etiquetas
- Soft delete
- Gerenciamento de tarefas e subtarefas
- Categorização
- Status de conclusão
- Ordenação personalizada
.NET 8.0
Entity Framework Core 8.0
SQL Server
Swagger
FluentValidation
Dapper
MediatR (CQRS)
src/
├── 🧱 BuildingBlocks/
│ ├── Nibbler.Core/
│ └── Nibbler.WebAPI.Core/
├── 📔 Diario/
│ ├── Nibbler.Diario.App/
│ ├── Nibbler.Diario.Domain/
│ └── Nibbler.Diario.Infra/
├── 👤 Usuarios/
│ ├── Nibbler.Usuario.App/
│ ├── Nibbler.Usuario.Domain/
│ └── Nibbler.Usuario.Infra/
└── 🌐 WebAPI/
└── Nibbler.WebAPI/
Configure a string de conexão em appsettings.json
:
{
"ConnectionStrings": {
"NibblerConnection": "Server=localhost;Database=NibblerProject;User Id=sa;Password=SuaSenha;TrustServerCertificate=True"
}
}
# Na pasta do projeto Infra
dotnet ef migrations add InitialCreate
dotnet ef database update
A API é documentada usando Swagger. Para acessar:
- Execute o projeto
- Acesse:
http://localhost:[porta]/swagger
- Domain-Driven Design (DDD)
- Clean Architecture
- CQRS
- Repository Pattern
- Unit of Work
- Value Objects
- Domain Events
Utilizamos FluentValidation para validar entradas. Exemplo:
public class AdicionarDiarioValidation : AbstractValidator<AdicionarDiarioCommand>
{
public AdicionarDiarioValidation()
{
RuleFor(c => c.Titulo)
.NotEmpty()
.Length(3, 150);
RuleFor(c => c.Conteudo)
.NotEmpty()
.Length(10, 5000);
}
}
- Fork o repositório
- Crie uma branch:
git checkout -b feature/nova-funcionalidade
- Commit suas alterações:
git commit -m 'Adiciona nova funcionalidade'
- Push para a branch:
git push origin feature/nova-funcionalidade
- Abra um Pull Request
- .NET 8.0 SDK
- SQL Server
- Visual Studio 2022 ou VS Code
# Clone o repositório
git clone https://github.com/seu-usuario/nibbler.git
# Entre na pasta
cd nibbler
# Restaure os pacotes
dotnet restore
# Setup certicado de desenvolvimento
dotnet dev-certs https --trust
# Execute
dotnet run --project src/WebAPI/Nibbler.WebAPI
- Projeto em desenvolvimento ativo. Novas funcionalidades são adicionadas regularmente.
Made with ❤️ by Estartando Devs