A web-based application built with React, TypeScript, and C# ASP.NET Core for efficient task management. This application allows users to create, manage, and track tasks with various features like task creation, editing, sorting, filtering, notifications, and more.
- User Registration and Login
- Create, Edit, and Delete Tasks
- Task Sorting and Filtering
- Task Details and Deadline Notifications
- User Profile Customization
- Search Functionality
- Data Visualization
- Frontend: React, TypeScript, HTML, CSS
- Backend: C# ASP.NET Core
- Database: SQL Server
- Authentication: JWT (JSON Web Tokens)
- Frontend State Management: Redux or React Context
- API Requests: Axios
- Data Validation: FluentValidation (C#), Formik (React)
- Testing: Jest, React Testing Library (for unit tests)
- Clone this repository:
git clone https://github.com/kennywam/TMS.git
- Navigate to the project directory:
cd task-management-system
- Set up the backend (C# ASP.NET Core): Refer to backend-setup.md for instructions on the backend repo.
- Set up the frontend (React): Refer to frontend-setup.md for instructions.
- Start both the backend and frontend development servers.
src/
contains the frontend source code.components/
houses all React components.styles/
includes CSS styles.services/
contains the API service (Axios requests).contexts/
for React context setup.
backend/
contains the C# ASP.NET Core project files.tests/
holds unit tests for your application.
- Register a new user account or log in.
- Create tasks with titles, descriptions, deadlines, and categories.
- Edit, mark as complete, or delete tasks as needed.
- Use sorting, filtering, and search features to manage your tasks.
- Customize your user profile and set up task notifications.
Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
- Fork this repository.
- Create a new branch for your feature or bug fix:
git checkout -b feature/your-feature-name
- Commit your changes:
git commit -m "Add your feature description"
- Push to the branch:
git push origin feature/your-feature-name
- Open a pull request to the
main
branch.
This project is licensed under the MIT License. Feel free to use and modify it according to your needs.
- This project was inspired by Carolyne Ndunge.
- Special thanks to Cashy for her contributions.