Agendain
I built this website and its admin panel on my own: designed the database, wrote the code, and shipped it to the server.
- Role
- Full-Stack Developer (remote)
- When
- May 2026 – present
- Stack
- Next.js · TypeScript · Prisma · MySQL · Tailwind · Nginx · Cloudflare
- Status
- Live · agendain.com ↗
agendain.comHome

What I built
- Bilingual CMS. 7 public pages in Indonesian and English, with open trip, private trip, destination, and blog modules managed by admins.
- Booking without overbooking. Quota checks and row locking at checkout. Invoices and itinerary PDFs reach customers through token links.
- Access control. RBAC with custom roles and an audit log. Closed 7 security audit findings, including role escalation and session revocation.
- SEO and performance. Image sitemap, RSS, and JSON-LD. Removed layout shift and sped up first paint on phones.
- Deployment. A VPS behind a reverse proxy and CDN, with a deploy script that never touches production data.