Mekar Cilacap — BUMDes/KMP Portal & Marketplace
A digitisation platform for Cilacap Regency’s BUMDes: a Next.js 16 frontend with a separate Laravel API for entity directories, a product marketplace, cash records and monthly reports, accountability reports, work programmes, and profit sharing.
Screenshots
Overview
What this system does.
Mekar (Mitra Ekonomi Kreatif dan Usaha Rakyat) is a digitisation platform for BUMDes, BUMDesMa, and KMP belonging to Pemkab Cilacap, the Cilacap Regency Government. The application has two parts: a Next.js 16 interface with React 19 serving visitors and management dashboards, and a separate Laravel 12 API holding all data and business rules. They communicate through REST with Sanctum tokens, while files are uploaded directly to object storage using S3 presigned URLs.
The public interface is a hierarchical directory: visitors browse entities, open an individual BUMDes profile, then explore its business units and products. The product catalogue can be browsed across entities and includes buyer reviews. New managers register independently through an entity-creation onboarding flow, then receive dashboard access according to their roles and permissions.
The management dashboard handles entities and business units, management officers, employees, business partners, products with categories and reviews, carts, orders, payments, refunds, and shipping methods. Financial records cover cash categories and transactions, running balances, a chart of accounts, assets, incoming and outgoing inventory, and profit sharing. Reporting includes monthly reports assembled through background jobs, accountability reports (LPJ), and work programmes. Reference data such as management positions, employee positions, employment status, legal status, unit types, and product types is managed centrally, with regional data retrieved from an external regional service. Notifications, audit trails, and per-entity audit logs record changes.
Feature inventory
Highlights
30 capabilities verified against the project source.
Public portal
- Public directory portal for BUMDes, BUMDesMa, and KMP throughout the regency
- Hierarchical browsing from entities to business units and products
- Public product catalogue across entities with product-detail pages
- Product reviews from buyers
- Self-service onboarding to register new entities
- User registration, login, token refresh, and password changes
Entities and people
- Entity management with association configuration and marketplace policies
- Business-unit management within each entity
- Management officers with management positions
- Employees with positions and employment status
- Business partners per entity
Marketplace
- Products, product categories, and product types
- Shopping cart with item selection, selected-item totals, and checkout
- Orders with item details, payments, and refunds
- Configurable shipping methods
Finance and assets
- Incoming inventory, outgoing inventory, and inventory categories
- Cash categories, cash transactions, and running balances
- Chart of accounts with account categories
- Assets and asset categories
- Business profit sharing between relevant parties
Reporting
- Monthly reports assembled through background jobs
- Accountability reports (LPJ) and work programmes for each entity
- Central reference data: positions, employment status, legal status, and unit types
- Province, regency, district, and village data from a regional service
Platform
- Notifications with read markers and unread counts
- Audit trails, per-entity audit logs, and audit change types
- Roles, permissions, and user management
- Direct uploads to object storage through presigned URLs
- Health-check and cache-clearing endpoints for operational needs
- Companion Blade dashboard for business-unit operations in the development environment
Capabilities
What it is built to handle.
Implementation highlights documented in the project source.
- Business units
- BUMDes
- Associations, entities, and units
- Village products
- Marketplace
- Catalogue, orders, and payments
- Reporting
- LPJ
- Cash records, monthly reports, and work programmes
Tech stack
Built with 14 technologies.
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS 4
- SWR
- React Hook Form
- Laravel 12
- Laravel Sanctum
- Spatie Permission
- Amazon S3
- MySQL
- Jest
- Playwright
- Docker
Common questions
What people usually ask.
Why a separate Next.js frontend and Laravel API?
Because the public directory and the management dashboards have very different demands. The Next.js side serves visitors fast; the Laravel API holds every business rule in one place and is the only thing that touches the database.
How do village enterprises get onto the platform?
Through self-service onboarding: a manager registers, creates the entity, and receives dashboard access according to their role. There is no central data-entry bottleneck.
What reporting does it produce?
Cash records with running balances, monthly reports assembled by background jobs, accountability reports (LPJ), work programmes, and profit-sharing calculations — per entity, with audit logs recording changes.
Same field
Related projects.
SmartGovt — Village Administration & Services
Village government platform with resident and household records, document services, GIS, regional statistics, RT/RW administration, a citizen portal, and Desa Anti Korupsi (Anti-Corruption Village programme) evaluations.
Laravel 12 · PHP 8.2 · Blade · Alpine.js · +15
Web Builder — Village Website SaaS
A multi-tenant SaaS platform for village websites: a GrapesJS visual editor, custom domains with on-demand TLS, WordPress imports, SEO analysis, and SmartGovt data integration.
Next.js 15 · React 19 · TypeScript · Laravel 13 · +12
Bot OCR KK — Data Extraction via Telegram
A Telegram bot that extracts Kartu Keluarga photographs using Google Gemini, validates data and regional references, and saves the results to the SmartGov database.
Node.js · Telegram Bot API · Google Gemini · MySQL · +3