Note: These images are mockups and made only for server-side requirenment clarifications only.
- Tasks management - Manage your tasks and count your time towards them. You can take notes, add sub-tasks, attachments and track the status of each of them.
- Reminders - Set reminders on any task and get notified. Also settings date allows you to track your tasks by calendar.
- Labels - Mark your tasks by adding labels to them.
- Pomodoro - Start pomodoro against a task and track your time. Configurable pomodoro duration as well as breaks timer.
- Statistics - Track your pomodoro history and statistics.
Cross-platform microservices app based on .NET Core and running on Docker host. This app is made for sample purposes only and may not fully follow production ready code. Tasks microservice is made by using DDD / CQRS architecture only for sample purposes, however it's mostly only CRUD service.
It's important to understand that CQRS and most DDD patterns (like DDD layers or a domain model with aggregates) are not architectural styles, but only architecture patterns. Microservices, SOA, and event-driven architecture (EDA) are examples of architectural styles. They describe a system of many components, such as many microservices. CQRS and DDD patterns describe something inside a single system or component; in this case, something inside a microservice. From this book page 186.
OpenAPI Specification (formerly Swagger Specification) is an API description format for REST APIs. An OpenAPI file allows you to describe your entire API, including: • Available endpoints (/users) and operations on each endpoint (GET /users, POST /users) • Operation parameters Input and output for each operation • Authentication methods • Contact information, license, terms of use and other information. API specifications can be written in YAML or JSON. The format is easy to learn and readable to both humans and machines. The complete OpenAPI Specification can be found on GitHub: OpenAPI 3.0 Specification. From https://swagger.io/docs/specification/about/
No. | Service | Description | OpenAPI | Build Status |
---|---|---|---|---|
1 | Tasks | Manages user tasks, labels, attachments etc. Follows DDD / CQRS architecture. | View | |
2 | Pomodoro | Serves for tracking user pomodoro's(towards which task, duration and date) | View | |
3 | Statistics (Soon) | Runs for keeping statistics and analytics of users activity. | Soon | [WIP] Status |
4 | Identity Server4 (Soon) | Stands for user authorization and user roles. | Soon | [WIP] Status |
5 | API Gateway (Soon) | Intercepts user requests and re-routes them to the corresponding microservices. | Soon | [WIP] Status |
6 | WebApp MVC (Soon) | Bridges browser requests with the backend. | Soon | [WIP] Status |
Backend | Testing | DevOps (Soon) |
---|---|---|
ASP.NET Core Web API | xUnit | |
EF Core | Moq | |
IdentityServer4 | NUnit (Soon) | |
Dapper | NSubstitute (Soon) | |
SQL Server |
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request
Code released under the MIT license.