ProjSync
Advanced Project Management Application
ProjSync is a comprehensive project management solution designed to help teams efficiently organize, track, and coordinate various tasks, resources, and activities within their projects. It provides a user-friendly interface for managing project-related data and visualizing progress.

Overview
ProjSync was developed as part of a Software Engineering course project in 2023/2024. The application aims to provide an efficient tool for project management, enabling users to organize, monitor, and coordinate different tasks, resources, and activities within their projects.
With its intuitive interface and robust functionality, ProjSync streamlines project workflows, facilitates team collaboration, and provides valuable insights through various visualization methods. The application is designed to serve the needs of project managers, team leaders, and team members by providing role-specific access and functionalities.
Key Features
User and Role Management
Comprehensive system for managing user accounts and assigning specific roles with appropriate access levels and permissions, ensuring secure and organized project participation.
Project Creation and Management
Tools to create, edit, and organize projects with detailed information, timelines, milestones, and resource allocation, providing a centralized hub for all project-related data.
Activity Management
Functionality to track and manage project activities, including task assignment, progress monitoring, deadline management, and completion status, ensuring all team members stay coordinated and informed.
Visualizations
Multiple visualization methods for project activities and progress, making it easier to understand complex project data, identify bottlenecks, and make informed decisions about resource allocation and timelines.
Data Filtering
Advanced filtering capabilities that allow users to narrow down project information based on various criteria, helping them find relevant data quickly and efficiently, even in large and complex projects.
Team Collaboration
Tools designed to enhance team cooperation, including shared task boards, activity feeds, and notification systems, fostering better communication and coordination among project team members.
Architecture
ProjSync follows a modern web application architecture with clear separation of concerns:
- Frontend: A responsive and interactive user interface built with Angular, following component-based architecture principles for maintainability and reusability.
- Backend: A robust API service developed using the .NET framework, handling business logic, data processing, authentication, and database interactions.
- Database: Data persistence layer using SQLite, providing reliable storage for project information, user data, and activity records.
The application employs a client-server model where the Angular frontend communicates with the .NET backend via RESTful API endpoints, ensuring efficient data exchange and separation of concerns.
Technology Stack
Angular 17
Frontend framework for building responsive and interactive user interfaces
TypeScript
Programming language for frontend development, adding static typing to JavaScript
HTML/CSS
Standard web technologies for structure and styling of user interfaces
.NET 8
Framework for building server-side applications and APIs
C#
Programming language for backend development
SQLite
Lightweight, file-based database system for data storage
Entity Framework Core
ORM framework for database interactions from .NET applications
RESTful APIs
Communication protocol between frontend and backend components
Git
Version control system for code management and team collaboration
Project Workflow
- User Authentication: Users log in with their credentials to access the system with their assigned role permissions.
- Project Creation: Project managers can create new projects, defining parameters, timelines, and team members.
- Task Management: Create, assign, and schedule tasks to team members with deadlines and priority levels.
- Progress Tracking: Monitor task completion, track project milestones, and visualize progress using different views.
- Reporting: Generate reports based on project data to provide insights into project health, resource utilization, and timeline adherence.
Setup and Installation
Requirements
- Node.js (v20.11.1 or higher)
- Angular CLI (v17.2.1 or higher)
- .NET SDK (v8.0.200 or higher)
Local Development Setup
# Clone the repository git clone http://gitlab.pmf.kg.ac.rs/si2024/syncatech.git # Start frontend cd src/front/angular npm install ng serve --open # Start backend cd src/back/backAPI/backAPI dotnet run
Development Team
Interested in ProjSync?
Check out the live demo to explore the application's features and functionality, or visit the GitHub repository to see the source code.