Full-stack application
Rengiat
An internal application for recording daily activity plans by sub-directorate and unit, then generating official reports for selected date ranges.
Problem and requirements
Rengiat, short for rencana kegiatan, is an internal application for one directorate within the Indonesian police organization. Its requirements are specific and focused: operators record daily activities by sub-directorate and unit, then prepare official reports for a selected period.
Because its operational scope is limited, the application avoids large unrelated modules. Its focus is fast daily entry, an easy-to-review activity list, report filters by date, sub-directorate, unit, and keyword, and document output ready for administrative use.
Application implementation
Rengiat uses the Laravel React Starter Kit with Inertia.js, React, TypeScript, and shadcn-style UI components. This combination fits an internal CRUD and table workflow that needs fast iteration without building a separate API.
Activities are stored as daily entries. Each entry can be associated with a sub-directorate and unit, with time, description, and optional image attachments. The super_admin, admin, operator, and viewer roles limit actions by responsibility, while operators can only modify entries within their sub-directorate.
Reporting
The report generator accepts a start date, an optional end date, sub-directorate or unit filters, and a description keyword. Results are arranged as a daily matrix with sub-directorates as rows and units as columns, allowing activities across multiple days to be read in one document.
Reports can be previewed before downloading as A4 landscape PDFs. Titles, headers, generation dates, and signature settings can be configured for directorate requirements. Browsershot is the primary renderer, with dompdf as a fallback.
Delivery speed
The project progressed from starter project on February 13, 2026, to deployed application on February 23, 2026, across 20 commits. Within that short period, core requirements were completed through focused iterations: changing the concept from units to sub-directorates, adding filter presets and refining PDF output, audit logs, report settings, Docker Compose, and CI/CD.
Rengiat demonstrates pragmatic use of a starter kit: Laravel provides authentication, policies, validation, and deployment foundations, while React and shadcn-style components speed up interface development. The result fits its real use case without over-engineering.


