Skip to content

danraskin/citizenkanineapp-demo

 
 

Repository files navigation

REPO SIZE TOP_LANGUAGE FORKS

Citizen Kanine

Summary

Citizen Kanine is a dog-walking business based in Minneapolis. Each morning, 'Pack Leaders' pick up clients' dogs along designated vans routes. On a typical day, the business walks 36+ dogs in small groups around Lake Harriet.

This React web app is a custom-built production business tool that integrates the company's scheduling, invoicing, record-keeping, and communications functions. The app contains two separate workflows: an admin dashboard and a mobile view for employees. The admin portal provides a centralized location for the company to manage employee schedules, client information, scheduling and invoicing. The mobile view allows employees to manage the distribution of dogs along pick-up routes on a daily basis, as well efficiently checking in which dogs were walked each day.

Key Features:

  • Employees utilize a 'drag and drop' mobile interface to balance the daily load of dogs
  • Employees see the client location in a maps view, allowing single-screen navigation and dog check-ins.
  • App syncs client data with Citizen Kanine's Quickbooks account via the Quickbooks API
  • App creates formatted Quickbook invoices at the click of a button
  • Admin can view client history and submit changes to client schedules

Citizen Kanine currently relies on the production app for its daily operations. Its completed version was developed by myself (Dan Raskin) and Sam Freeman. I am continuing to develop its features in collaboration with the company and its employees. The original prototype was built in a three-week sprint with a team of four other developers: Sarah Preston, Blake Smith, Yanira Hagstrom and Sam Freeman.

  • Check out the repo for the production version of the app here.

Explore the Citizen Kanine App

  • Click here to interact with a fully functional demo version of the Citizen Kanine App.

You will be prompted for authorization. submit the following:

username: admin

password: admin

MOBILE VIEW

The mobile views can be accessed your via your desktop by changing the screen size in your browser's Developer Tools, but it is designed be viewed on a mobile device! Logging in as admin will take you the mobile home view:

mobile home screen

Select 'Routes,' scroll to the bottom, and select 'load balancing.'

NOTE: If you are checking this demo app on a Saturday or a Sunday, no dogs will appear in the routes view, because Citizen Kanine operates M-F, and no dogs are scheduled for weekend walks.

mobile home screen

Turn the screen sideways as prompted to view the load balancing screen. Select the "edit" button on the top-right and explore the drag and drop function!

mobile home screen

Return the the "Routes" screen via the bottom nav-bar, and navigate to a route of your choice. Select the 'Map' button.

mobile home screen

Select an icon to open up the 'check-in' modal. This is how pack leaders check in dogs. (They can also do this in the previous 'Route view').

mobile home screen

Each dog must be identified as 'checked-in', 'no-show', or 'cancelled' individually. After checking in all dogs, click 'check-in all dogs.' This does not affect dog check-in in status, but it does change the icon color so that pack leaders can keep track of their pick-ups! Feel free to check in dogs. This data will be stored and viewable as tabulated client history in the Admin Dashboard 'Invoice Tool.'

ADMIN DASHBOARD

Logging in as admin will take you to the admin dashboard. You can leave to-do notes. Notes written by employees in the mobile view also appear here. A future update is an option to send notes to employees via the dashboard.

mobile home screen

Click the navbar icon on the top-left to see the full nav menu.

mobile home screen

Select 'Clients' to view client list.

mobile home screen

Clients are searchable by client and dog name. Select a client to view client details. 'Connect to Quickbooks' establishes authorization and authentication with Quickbooks using Oauth2. Access and refresh tokens are stored in browser. 'Quickbooks Sync' button makes API call to Quickbooks to recieve full list of company's clients. Any changes to client data made in Quickboooks is updated to app.

Click navbar icon and select 'Invoice Tool' to view and create invoices.

mobile home screen

Client history is tabulated by client, service provided, and month. History is searchable by client. 'Export CSV' button exports a selected client history formatted to upload to Quickbooks. This feature was developed in the app prototype. The 'Sync QB' button directly creates Quickbooks Invoices through Quickbook API.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 96.5%
  • CSS 3.4%
  • HTML 0.1%