Skip to content

tifandotme/puri

Repository files navigation

Logo


Puri is an Order Management System developed for a logistics company in Semarang. The application successfully transformed the customer order processing workflow, replacing the outdated physical whiteboard-based system with a modern web-based solution. This transition enabled real-time data display and push notifications, facilitating seamless coordination between the sales and logistics divisions.

Features

  • Dashboard
  • Add new customers and orders
  • Modify/remove customers and orders
  • See data changes in real-time and receive push notifications when it does
  • PWA-compliant, so the app is installable

Tech Stack

Client: React, Chakra UI, React Router, React Hook Form, React Select, TanStack Table

Server: Firebase (Authentication, Realtime Database, Cloud Messaging, Cloud Functions)

Usage

If you want to try out this demo app, follow this instructions:

  1. Visit puri.systems

    A popup will appear prompting you to choose to log in from either logistik or sales demo account

  2. Login with a logistik account.
  3. Open up another browser window (or another device if you can). Repeat step 1-2, but this time, choose to login with a sales account.
  4. Allow notification by pressing the bell icon on top-left.
  5. From a sales account, you have the ability to create/modify entries, be it customers or orders. Create/modify as you like!
  6. From a logistik account, you can't modify entries, but you can change the order status. Try changing one of the switch.
  7. From sales account perspective, in real-time they will receive push notifications.

Notification type will differ depending on whether the window is in focus or minimized. When in focus, an in-app notification will appear, conversely, a system push notification will appear when window is not in focus

Run Locally

Click to open

Make sure you have these programs installed: Git, Node, Java SDK (for firebase emulator), pnpm

Clone repository

git clone https://github.com/tifandotme/puri

Install dependencies

pnpm install

Run development server

pnpm run dev

Run Firebase Emulator

pnpm run emulator

Access at http://localhost:3000

License

MIT