{"id":21538169,"url":"https://github.com/othman-birem/taskmanager","last_synced_at":"2026-02-14T20:34:19.865Z","repository":{"id":261621617,"uuid":"884828728","full_name":"othman-birem/TaskManager","owner":"othman-birem","description":"TaskManager is an intermediate-level full-stack task management system built with ASP.NET Core for the backend and Angular for the frontend. It provides comprehensive features for task creation, assignment, real-time collaboration, and analytics, making it easier for teams and individuals to stay organized and efficient.","archived":false,"fork":false,"pushed_at":"2024-12-25T09:21:20.000Z","size":13251,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-10T07:39:18.873Z","etag":null,"topics":["angular","asp-net-core","fullstack","webapp"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/othman-birem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-07T13:15:23.000Z","updated_at":"2024-12-30T19:30:53.000Z","dependencies_parsed_at":"2024-11-07T15:23:13.707Z","dependency_job_id":"389a798e-c69d-4d88-896d-c2d71ef1ec73","html_url":"https://github.com/othman-birem/TaskManager","commit_stats":null,"previous_names":["othman-birem/taskmanager"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/othman-birem/TaskManager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/othman-birem%2FTaskManager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/othman-birem%2FTaskManager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/othman-birem%2FTaskManager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/othman-birem%2FTaskManager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/othman-birem","download_url":"https://codeload.github.com/othman-birem/TaskManager/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/othman-birem%2FTaskManager/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278734598,"owners_count":26036437,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angular","asp-net-core","fullstack","webapp"],"created_at":"2024-11-24T04:10:52.991Z","updated_at":"2025-10-07T07:07:25.470Z","avatar_url":"https://github.com/othman-birem.png","language":"C#","readme":"# TaskManager 📅\n\nTaskManager is an intermediate-level full-stack task management system built with ASP.NET Core for the backend and Angular for the frontend. It provides comprehensive features for task creation, assignment, real-time collaboration, and analytics, making it easier for teams and individuals to stay organized and efficient.\n\n## Table of Contents\n\n- [Features](#features)\n- [Technologies Used](#technologies-used)\n- [Prerequisites](#prerequisites)\n- [Getting Started](#getting-started)\n- [Project Structure](#project-structure)\n- [Running the Application](#running-the-application)\n- [Environment Variables](#environment-variables)\n- [Database Configuration](#database-configuration)\n- [Contributing](#contributing)\n- [License](#license)\n\n## Features\n\n- **User Authentication \u0026 Authorization**: Secure access using ASP.NET Identity with role-based permissions for Admin, Manager, and Employee.\n- **Task CRUD Operations**: Create, Read, Update, and Delete tasks with the ability to assign tasks to different users.\n- **Task Categories and Statuses**: Organize tasks by categories (e.g., Development, Marketing) and track status (Pending, In Progress, Completed).\n- **Real-Time Updates**: Get notified of task updates and comments in real-time with SignalR.\n- **Commenting System**: Collaborate on tasks by adding comments, with real-time updates.\n- **Dashboard and Analytics**: Visualize task distribution and progress using charts.\n- **Responsive UI**: Frontend built with Angular Material for a consistent experience across all devices.\n\n## Technologies Used\n\n- **Frontend**: Angular, Angular Material, TypeScript\n- **Backend**: ASP.NET Core, Entity Framework Core, SignalR\n- **Database**: SQL Server (using Docker for local setup)\n- **Other**: JWT for authentication, Chart.js for analytics, SendGrid for email notifications\n\n## Prerequisites\n\nTo run this project locally, ensure you have the following installed:\n\n- **.NET SDK** (6.0)\n- **Node.js** (\u003e=14.x) and Angular CLI\n- **Docker Desktop** for running SQL Server in a container\n- **SQL Server** (if not using Docker)\n\n## Getting Started\n\n### 1. Clone the Repository\n\n  ```bash\n  git clone https://github.com/othman-birem/TaskManager\n  cd TaskManager\n  ```\n### 2. Install Dependencies\n**Backend (ASP.NET Core)**\n\n\u003cimg src=\"https://s3-ap-southeast-1.amazonaws.com/homepage-media/wp-content/uploads/2020/03/04092434/NET_Core_Logo.png\" alt=\"ASP.NET\" height=\"100\"/\u003e\n\nNavigate to the backend directory and restore .NET packages:\n```bash\ncd TaskManager.Server\ndotnet restore\n```\n**Frontend (Angular)**\n\n\u003cimg src=\"https://user-images.githubusercontent.com/25181517/183890595-779a7e64-3f43-4634-bad2-eceef4e80268.png\" alt=\"Angular\" height=\"100\"/\u003e\n\nNavigate to the frontend directory and install Node dependencies:\n```bash\ncd taskmanager.client\nnpm install\n```\n### 3. Configure the Database\nThe project uses SQL Server as its database. You can set up SQL Server using Docker or install it locally.\n\nTo start a SQL Server container using Docker, run:\n```bash\ndocker run -e \"ACCEPT_EULA=Y\" -e \"MSSQL_SA_PASSWORD=YourPassword!\" -p 1433:1433 -d mcr.microsoft.com/mssql/server:2022-latest\n```\nUpdate the connection string in `appsettings.json` (found in `TaskManager.Server`) to match your database configuration.\n\n### 4. Run Database Migrations\nNavigate to the backend folder and run migrations to set up the database:\n\n```bash\ndotnet ef database update\n```\n### 5. Configure Environment Variables\nTo enable email notifications, create a `UserSecrets.json` or use environment variables for settings like SendGrid API key, database connection string, etc.\n\n### 6. Run the Application\n**Backend (ASP.NET Core)**\nStart the ASP.NET Core API:\n\n```bash\ncd TaskManager.Server\ndotnet run\n```\n**Frontend (Angular)**\nStart the Angular frontend application:\n\n```bash\ncd taskmanager.client\nng serve\n```\nThe backend will be available at `http://localhost:5000`, and the frontend at `http://localhost:4200`.\n\n## Project Structure\n```bash\nTaskManager/\n├── TaskManager.Server/          # ASP.NET Core backend\n│   ├── Controllers/             # API controllers\n│   ├── Models/                  # Data models and entities\n│   ├── Services/                # Business logic services\n│   └── appsettings.json         # Application settings\n├── taskmanager.client/          # Angular frontend\n│   ├── src/\n│   │   └── app/\n│   └── angular.json             # Angular configuration\n└── README.md                    # Project readme\n```\n## Running the Application\n**Run Backend:** Open a terminal in the `TaskManager.Server` folder and run dotnet run.\n**Run Frontend:** Open another terminal in the `taskmanager.client` folder and run `ng serve`.\nVisit `http://localhost:4200` to view the application in your browser.\n## Environment Variables\nSet up the following environment variables in a `UserSecrets.json` file or your environment:\n\nDatabaseConnection: Connection string for SQL Server.\nSendGridApiKey: API key for SendGrid (for email notifications).\nExample:\n\n```json\n{\n  \"DatabaseConnection\": \"Server=localhost;Database=TaskManager;User Id=sa;Password=YourPassword!\",\n  \"SendGridApiKey\": \"your-sendgrid-api-key\"\n}\n```\n## Database Configuration\nThe project uses Entity Framework Core with SQL Server. Make sure your connection string is correct in `appsettings.json`:\n\n```json\n\"ConnectionStrings\": {\n  \"DefaultConnection\": \"Server=localhost;Database=TaskManager;User Id=sa;Password=YourPassword!\"\n}\n```\n## Contributing\nContributions are welcome! Please fork this repository, create a new branch, and submit a pull request with your changes.\n\n## License\nThis project is licensed under the MIT License. See the LICENSE file for details.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fothman-birem%2Ftaskmanager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fothman-birem%2Ftaskmanager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fothman-birem%2Ftaskmanager/lists"}