top of page
Sphere on Spiral Stairs

Project Overview

Planit CRM is a Customer Relationship Management (CRM) software that helps in managing and tracking projects, tasks, invoices, quotes, leads, customers, transactions and much more. PlanIt CRM allows anyone to manage leads, create invoices, and start collecting payments seamlessly.

Planit CRM logo.png

Project at a Glance

Hierarchy Diagram - Flash Slide (1).png

Ultimately, the project is about extracting functionality from the original Laravel project into an Angular Frontend and NodeJS authentication instance while adding documentation and automated testing to lay a foundation for later development efforts.

Background

PlanIt CRM's Origins

The system was developed by Driven Software Solutions under the guidance of Shahzib Sarfraz in 2018. Driven Software Solutions employs a team of around fifty developers to maintain several applications including a Dine-N-Go solution and a Robot Integration platform

Shahzib.jpg

Shahzib Sarfraz

Founder of Driven Software Solutions

Goals

1. Reimplementing the Frontend in Angular

The original PlanIt CRM was developed with the Laravel framework and PHP, which made it very difficult to integrate new functionalities. Angular is a well-tested framework utilizing Typescript, CSS, and HTML that can be easily extended with its built-in components.

2. Writing Documentation

PlanIt CRM was developed by a single developer who left the company without writing any documentation on the application's architecture or development process. This further complicates maintenance and expansion efforts and requires that we create a full range of documentation for future developers.

3. Adding Authorize.net

PlanIt CRM utilizes a payment processor through Driven Software Solutions, but the client wanted to be able to add 3rd party payment processors via the Authorize.net API, a Visa platform.

4. Automated Testing

The original application had nearly no automated testing, which is less than optimal for ensuring that the site is behaving correctly. As such, we should add additional automated testing in the form of unit and integration testing for Angular components and website function.

PlanIt CRM SWE-7903 Group 2

©2023 by PlanIt CRM SWE-7903 Group 2. Proudly created with Wix.com

bottom of page