# davidfowl/todoapp

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/davidfowl-todoapp).**

3,104 stars · 463 forks · C# · mit

## Links

- GitHub: https://github.com/davidfowl/TodoApp
- awesome-repositories: https://awesome-repositories.com/repository/davidfowl-todoapp.md

## Topics

`aspnetcore` `authentication` `blazor` `cookies` `dotnet-core` `jwt` `opentelemetry` `rest-api` `webassembly`

## Description

TodoApp is a task management web application designed for organizing and tracking pending items. It consists of a web-based interface and a REST API backend that handles business logic and data requests.

The system includes an OAuth 2.0 identity provider for user authentication via passwords and external social providers, as well as an API gateway proxy that routes traffic from the frontend to the backend to prevent cross-origin resource sharing issues.

Operational capabilities cover system observability through OpenTelemetry for collecting logs and metrics, request rate limiting to maintain service stability, and persistent data storage using SQLite. User identity is maintained through cookie-based session management.

## Tags

### Business & Productivity Software

- [Personal Task Management](https://awesome-repositories.com/f/business-productivity-software/personal-task-management.md) — Provides a web-based application for organizing personal to-do lists and tracking task completion.
- [Task Management Applications](https://awesome-repositories.com/f/business-productivity-software/task-management-applications.md) — Provides a complete web application for organizing and tracking pending tasks.
- [Task Management Interfaces](https://awesome-repositories.com/f/business-productivity-software/task-management-interfaces.md) — Ships a web-based interface for creating, viewing, and managing task lists. ([source](https://github.com/davidfowl/TodoApp#readme))

### Data & Databases

- [Task List Persistence](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage/task-list-persistence.md) — Ensures that organized task lists and their completion status are saved permanently in a database. ([source](https://github.com/davidfowl/TodoApp/blob/main/README.md))
- [SQLite Storage Adapters](https://awesome-repositories.com/f/data-databases/sqlite-drivers/sqlite-storage-adapters.md) — Uses a SQLite storage adapter to persist application data to a local file system database. ([source](https://github.com/davidfowl/TodoApp#readme))
- [Local Database Persistence](https://awesome-repositories.com/f/data-databases/sqlite-drivers/sqlite-storage-adapters/local-database-persistence.md) — Utilizes an embedded SQLite database to ensure task and user data persists across system restarts.

### DevOps & Infrastructure

- [REST API Endpoint Management](https://awesome-repositories.com/f/devops-infrastructure/rest-api-endpoint-management.md) — Provides REST API endpoints that map HTTP routes to handlers for managing task data and business logic. ([source](https://github.com/davidfowl/TodoApp#readme))

### Security & Cryptography

- [Identity Authentication](https://awesome-repositories.com/f/security-cryptography/identity-authentication.md) — Manages user identity through a combination of session-based authentication and external identity providers. ([source](https://github.com/davidfowl/TodoApp/blob/main/Todo.Web/Server/Authentication/AuthenticationExtensions.cs))
- [User Identity Verification](https://awesome-repositories.com/f/security-cryptography/identity-authentication/user-identity-verification.md) — Validates user identities using passwords, tokens, and external social providers to secure application access. ([source](https://github.com/davidfowl/TodoApp#readme))
- [Session & Cookie Handlers](https://awesome-repositories.com/f/security-cryptography/session-cookie-handlers.md) — Uses cookies to maintain user sessions and track authentication state across multiple client requests.
- [Identity Providers](https://awesome-repositories.com/f/security-cryptography/identity-providers.md) — Functions as an identity provider verifying users via passwords and external OAuth 2.0 integrations.
- [OAuth Provider Integrations](https://awesome-repositories.com/f/security-cryptography/oauth-authentication/oauth-provider-integrations.md) — Integrates external OAuth providers to allow users to sign in with third-party social accounts.
- [Social Login Integrations](https://awesome-repositories.com/f/security-cryptography/social-login-providers/social-login-integrations.md) — Provides the ability to link and authenticate users via social platform accounts. ([source](https://github.com/davidfowl/TodoApp#readme))

### Web Development

- [REST API Backends](https://awesome-repositories.com/f/web-development/rest-api-backends.md) — Provides a REST API backend that handles the core business logic and data requests for the application.
- [REST API Implementations](https://awesome-repositories.com/f/web-development/rest-api-implementations.md) — Implements a REST API backend to handle business logic and data requests for the web interface.
