{"id":21939287,"url":"https://github.com/sakr2000/iti_grad","last_synced_at":"2026-02-17T20:31:31.634Z","repository":{"id":255517263,"uuid":"851899359","full_name":"sakr2000/ITI_Grad","owner":"sakr2000","description":"ITI Graduation Project:  Shipping Management System developed to streamline and automate the shipping process for logistics companies.","archived":false,"fork":false,"pushed_at":"2024-09-30T16:42:35.000Z","size":1200,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-23T22:39:46.270Z","etag":null,"topics":["angular","bootstrap","css3","front-end-development","git","html5","shipping-and-delivery","typescript"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sakr2000.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-09-03T22:02:06.000Z","updated_at":"2024-12-05T07:43:23.000Z","dependencies_parsed_at":"2024-09-18T02:56:46.357Z","dependency_job_id":"11433dad-ca35-4e26-8e36-6dff073c40e7","html_url":"https://github.com/sakr2000/ITI_Grad","commit_stats":null,"previous_names":["sakr2000/iti_grad"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sakr2000/ITI_Grad","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sakr2000%2FITI_Grad","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sakr2000%2FITI_Grad/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sakr2000%2FITI_Grad/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sakr2000%2FITI_Grad/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sakr2000","download_url":"https://codeload.github.com/sakr2000/ITI_Grad/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sakr2000%2FITI_Grad/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29557219,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-17T20:14:27.083Z","status":"ssl_error","status_checked_at":"2026-02-17T20:14:26.018Z","response_time":100,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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","bootstrap","css3","front-end-development","git","html5","shipping-and-delivery","typescript"],"created_at":"2024-11-29T02:18:17.253Z","updated_at":"2026-02-17T20:31:26.623Z","avatar_url":"https://github.com/sakr2000.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Shipping Management System\n\nThis project was our [team's](#team-members) graduation project from **(Full-Stack Web Development using .NET and angular)** 4-months Intensive Code Camp in the [Information and Technology Institute](https://iti.gov.eg/home) **(ITI)**,Menofia branch.\n\nThe Shipping Management System developed is designed to streamline and automate the shipping process for logistics companies. It offers comprehensive features for managing user roles, permissions, orders, and geographical areas, catering to the needs of different user types such as administrators, employees, agents, and merchants.\n\n**_Key Functionalities:_**\n\n- User Management: Secure login for all users, with administrators able to manage accounts and assign role-based permissions.\n\n- Order Management: Merchants can create orders, and employees can manage and track them, with reporting capabilities for analysis.\n\n- Region and Branch Management: Manage shipping operations across branches and geographical areas, ensuring accurate routing.\n\n- Weight Settings: Configure weight options for shipments, enabling accurate cost calculations.\n\n- Dashboards: Tailored dashboards for different user roles, enhancing ease of use and access to relevant features.\n\n[**Go To the backend repository**](https://github.com/loaisaber07/Shipping-Management)\n\n## Table of Contents\n\n- [Features](#features)\n- [Technologies Used](#technologies-used)\n- [Angular Features Used](#angular-features-used)\n- [Future Improvements](#to-be-added)\n- [Team](#team-members)\n- [Screenshots](#screenshots)\n\n## Features\n\n**1. User Authentication**\n\n- Admin logs in with a username and password.\n- Other users (employees, agents, merchants) log in with a username/email and password.\n\n**2. User Management**\n\n- Add Users: Admin can add users by entering the full name, username, email, and password.\n- Edit/Delete Users: Admin can edit or permanently delete users.\n- Assign Groups: Admin can assign users to predefined user groups (with specific permissions).\n\n**3. User Groups and Permissions**\n\n- Admin can create groups of users and assign permissions for accessing or modifying screens and functionalities within the system.\n- Permissions define the operations and screens a user group can access.\n\n**4. Weight Settings**\n\n- Provides screens for managing weight settings, which may include adjusting weight options for shipping.\n\n**5. Region Management**\n\n- Branches: Manage the branches used for shipping.\n- Areas: Includes screens to manage geographical regions such as cities and provinces.\n\n**6. Order Management**\n\n- Add Orders (Merchant): Merchants can add shipping orders to the system.\n- View Orders (Employee): Employees can view and manage orders.\n- Order Reports: Employees can generate reports on the orders.\n\n**7. Main Dashboards**\n\n- Merchant Dashboard: Specific dashboard with relevant features for merchants.\n- Employee Dashboard: Specific dashboard for employees to manage shipping processes.\n\n**8. Reports**\n\n- Allows employees to generate order reports for analysis and tracking.\n\n**9. Non-Functional Requirements**\n\n- Data Accuracy: Ensuring the data is accurate throughout the system.\n- Performance: Optimizing the speed of data loading.\n- Data Security: Encrypting user data to ensure privacy and protection.\n\n## Technologies Used\n\n\u003cimg src=\"https://skillicons.dev/icons?i=angular,ts,bootstrap,html,css,git\u0026perline=3\" align=\"right\" /\u003e\n\n- **Angular V18.1.4**\n- **Bootstrap 5**\n- **HTML5**\n- **CSS3**\n- **TypeScript**\n- **Git**\n\n## Angular Features Used\n\nThe Angular framework offers numerous features that simplify development, improve code maintainability, and enhance the overall quality of the final product. Below are the key features leveraged in this project:\n\n- **Standalone Components:** In this project, we used `standalone components` instead of traditional Angular modules. This allows each component to define its dependencies and simplifies the architecture by reducing the complexity of the module system. Standalone components make it easier to manage and optimize dependencies at the component level.\n\n- **Angular Services:** Services facilitate reusable logic for data management and backend interaction. In this project, services were implemented to handle business logic and communicate with backend APIs efficiently. Shared services also allow seamless data sharing between different components while following the `Dependency Injection pattern`.\n\n- **Angular Routing:** Angular’s powerful routing mechanism was used to navigate between different views of the application. To optimize performance, **_lazy loading_** was implemented, which loads components on demand, reducing the initial load time and improving user experience.\n\n- **Angular Guards:** Route guards (such as `AuthGuard`) were utilized to secure application routes, ensuring that only authorized users can access specific pages. These guards also help manage roles and permissions, enhancing overall security.\n\n- **Angular Interceptors:** HTTP interceptors were employed to handle API requests, automatically attaching the `JWT token` to authorized requests. Interceptors also manage global behaviors, such as displaying a loading spinner during API calls and handling error responses from the backend.\n\n- **TypeScript Interfaces:** Strong typing through TypeScript interfaces ensured better alignment between front-end and back-end data models. This helped reduce errors, especially when handling complex `Data Transfer Objects (DTOs)` received from the backend.\n\n- **Angular Reactive Forms:** Reactive forms were implemented to create dynamic and complex forms with built-in validation. This enabled seamless form control, validation, and error handling, providing a smooth user experience for input-heavy sections of the application.\n\n- **Pipes:** Custom and built-in Angular pipes were used to transform data in templates. For example, date formatting, string manipulation, and conditional filtering were handled using pipes, keeping the templates clean and concise.\n\n- **Angular Directives:** directives were used to extend the behavior of HTML elements in a reusable way. For example, directives were used to handle specific DOM manipulations and UI behaviors.\n\n- **Performance Optimization:** Techniques such as trackBy in `*ngFor` were applied to optimize performance by minimizing unnecessary re-renders.\n\n## Future Improvements\n\n- **Real-Time order Tracking** (GPS \u0026 notifications)\n- **Advanced Analytics** (data insights \u0026 custom reports)\n- **Automated Order Assignment** (smart dispatching \u0026 load optimization)\n- **Third-Party Integration** (payment gateways, e-commerce platforms)\n- **Predictive Analysis** (delivery time, cost optimization)\n- **Enhanced Security** (2FA, audit logs)\n- **Mobile Application** (for employees, merchants, and customers)\n- **Multilingual \u0026 Multi-Currency Support**\n- **Warehouse Management Integration** (inventory tracking, automation)\n- **Customer Feedback System** (ratings \u0026 feedback collection)\n\n## Team Members\n\n- [Loai Saber](https://github.com/loaisaber07)\n- [Ahmed Kamel](https://github.com/AKR045)\n- [Mohamed Adel](https://github.com/mohamedadel26)\n- [Ahmed Yaseer](https://github.com/Ahmedyasser11)\n- [Mohamed Sakr](https://github.com/sakr2000)\n\n## ScreenShots\n\n![ScreenShot](public/Readme_Images/Screenshot_27.png)\n![ScreenShot](public/Readme_Images/Screenshot_38.png)\n![ScreenShot](public/Readme_Images/Screenshot_35.png)\n![ScreenShot](public/Readme_Images/Screenshot_36.png)\n![ScreenShot](public/Readme_Images/Screenshot_37.png)\n![ScreenShot](public/Readme_Images/Screenshot_33.png)\n![ScreenShot](public/Readme_Images/Screenshot_34.png)\n![ScreenShot](public/Readme_Images/Screenshot_47.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsakr2000%2Fiti_grad","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsakr2000%2Fiti_grad","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsakr2000%2Fiti_grad/lists"}