LightManager | JIANTAO.dev
← Back to projects
Live

LightManager

A project management application built around an ASP.NET Core Web API, with authentication, role-based authorization, project and task workflows, persistent PostgreSQL data and Azure deployment.

Technologies

C#ASP.NET CoreEntity Framework CorePostgreSQLReactTypeScriptMicrosoft Azure

Update Information

After two months of development and running the application online, I have discovered several issues with this project. In the future, I plan to build a new and more modern TODO application. I will keep this project as a backup. Once the new application is working properly, I will replace the current project with it.

  1. The application lacks responsive design The current design only works well on desktop, which makes it difficult to use on mobile devices.

  2. There is no public sharing feature I am considering adding a button that allows users to make their plans public, so others can view them as well.

  3. It currently uses Azure App Service I am planning to switch from Azure App Service to Azure Container.

  4. More features I would like to add more features in the future, such as notes.

Overview

LightManager is an open-source project management application designed for small and medium-sized teams that need a straightforward way to organize projects and tasks without the complexity of enterprise project management software. The application is built around an ASP.NET Core backend and includes authentication, authorization, role-based permissions, project membership, task assignment and a Kanban workflow.

The Problem

A useful project management application requires more than CRUD operations. Users, projects, memberships, roles and tasks need to work together while the backend ensures that users can only perform operations they are authorized to perform. The goal was to build these connected workflows while keeping the product simple and easy to use.

Solution

The application separates responsibilities between a React frontend and an ASP.NET Core Web API. ASP.NET Identity manages user identity, JWT tokens authenticate protected requests, Entity Framework Core manages relational data access and PostgreSQL stores persistent application data. Important business and authorization rules are enforced by the backend rather than depending on the frontend.

Features

Authentication

Users authenticate through ASP.NET Identity and protected API requests use JWT tokens.

Authorization

Backend endpoints enforce application permissions independently of what is displayed in the frontend.

Role-Based Permissions

Project operations depend on the user’s role and relationship to the project.

Project Management

Users can create, edit, archive and delete projects.

Task Management

Tasks can be created, edited, deleted and assigned to members of the project.

Kanban Workflow

Tasks can be moved between states using a drag-and-drop Kanban board.

Challenges & Decisions

Backend Authorization

Permissions must be enforced by the API rather than relying on buttons or routes being hidden in the frontend.

Relational Application Data

Users, projects, memberships, roles, tasks and assignments need clear relationships and predictable behaviour.

Separate Frontend and Backend

The React application and ASP.NET Core API are independent deployments and need correct authentication, configuration and production communication.

Deployment

The React frontend is deployed with Azure Static Web Apps, the ASP.NET Core API runs on Azure App Service and PostgreSQL is hosted with Neon. The project previously used Vercel and Render before moving to Microsoft Azure in August 2026. Because the application currently uses free-tier services, the backend can experience a cold start after a period of inactivity.

Future Improvements

  • Use AI to generate suggested tasks from a project description
  • Add task search and filtering to the Kanban board