LaravelSass

MGS Tool

Role: Full-stack Developer

Libraries / Frameworks used: Laravel, VueJS, Sass

Integrations: Zoho CRM, Tsheet (Quickbooks Time), Zapier, GetStream.io

Context.

MGS Tool is a web app designed for job management and scheduling of MGS verifiers who handles medical gas equipment inspections.

To get more information about this project, please visit www.medgasservices.com

Development work.

The client required a specialized tool for their operations and wanted it seamlessly integrated with their existing productivity tools, like Zoho. As the principal developer of this project, I drived its technical direction including review and assessment of third-party integrations.

Database schema design

I designed the MySQL database structure based on the project’s requirements, utilizing Laravel’s migration tool and seeding features to create the schema.

Designed a multi-role user system with permission restrictions

The roles and permissions are defined in a JSON config file and I implemented it dynamically throughout the app. I also utilized the Spatie Laravel Permission library for this feature.

Developed admin and accounts portal

Users with admin roles can manage accounts, jobs, and schedule appointments. Accounts role can view, cancel, reschedules their appointments.

Integrate accounts data with Zoho CRM Accounts & Contacts

I implemented a two-way sync function for Accounts and Contacts data. I set up webhooks for Zoho CRM to notify the app of any changes in the CRM.

Integrate job scheduling with Quickbooks Time

I implemented queued jobs to periodically sync data from app to Quickbooks Time.

Built a RESTful API for the app to allow external integrations

Reflection.

I enjoyed the challenge of working with the APIs - building the app's API, integrating with Zoho CRM and Quickbooks Time, and setting up webhooks for Zapier and GetStream.io.