Web / Done
RigDaily Daily Drilling Report System
Overview
Daily well operations reporting that connects rig and office in one controlled report flow: DDR, 24 hour time breakdown, NPT, cost and AFE, billing, personnel, marine, safety, and rig to office sync. Runs as a Next.js web app for the office and an offline-first Electron desktop .exe with local SQLite for the rig, syncing through an outbox when the network returns. Seven roles from Rig Clerk to Administrator have server-checked permissions, and every approved report locks with a numbered amendment trail.
Challenge
Keeping one report consistent across two disconnected environments: the 1,440 minute day must validate with no gaps and no overlaps before submission, depth must never move backward, and rig submissions must never overwrite an office-approved final but land in a manual conflict queue. Seven roles share one dataset, so every permission is checked on the server rather than hidden in the menu.
Result
Delivered a live platform at rigdaily.web.id with a public landing plus demo mode covering 7 roles, a five-stage report flow from Draft to Locked with audit log and PDF distribution, and a desktop NSIS x64 .exe that writes to on-device SQLite first and syncs via outbox. Covered by 360 Vitest unit tests plus Playwright end-to-end suites.
Key Statistics
1,440 minutes per day, no gaps
Time validation
7 with server-checked permissions
Roles
360 Vitest tests
Unit tests
Electron NSIS x64 .exe, SQLite local
Desktop
Technologies
Frontend
-
Next.js 14
-
React 18
-
TypeScript
-
Tailwind CSS 3
Backend
-
PostgreSQL
- Drizzle ORM
- Zod
- pdfkit
Desktop
- Electron 31
- better-sqlite3
- NSIS x64 installer
Auth
- Cookie session
- JWT jose
Quality
- Vitest
- Playwright
Deployment
- Self-hosted
Gallery
Login
Office login with demo mode entry covering all 7 roles.
Dashboard
Office overview of rigs, reports, and pending approvals.
DDR Form
Daily drilling report form following rig work order from well header to next-day plan.
Time Breakdown
24 hour breakdown validated to exactly 1,440 minutes with IADC and NPT codes.
Cost and AFE
Daily and cumulative cost tracked against AFE usage per well.
Sync Center
Outbox queue showing rig to office sync state with conflict handling.