Frozeria Next
Overview
Frozeria Next was built for a BNSP (Badan Nasional Sertifikasi Profesi) certification assessment. The task was to demonstrate full-stack development skills by building a frozen-food stock management application with CRUD operations, dashboard, photo upload with pluggable storage backends, and item detail pages. This project combined everything I had learned across campus projects, competitions, and internship training into a single, polished application.
Problem
- Frozen-food businesses struggle to track inventory across multiple storage locations (freezers)
- Manual stock tracking leads to spoilage, overstocking, and lost revenue
- The BNSP assessment required a production-quality application with proper architecture, documentation, and deployment
Goal
- Build a full-stack application that demonstrates Next.js proficiency
- Implement stock management with real-time inventory tracking
- Support pluggable storage backends (local, Cloudinary, S3-compatible)
- Prepare a codebase that meets BNSP certification standards
Role
I built the entire application independently.
Team: Achmad Raihan Fahrezi Effendy (Full-Stack Developer)
Architecture
| Layer | Technology | Purpose |
|---|---|---|
| Framework | Next.js 16 | Full-stack React framework |
| Language | TypeScript 5 | Type safety across the stack |
| UI | Ant Design 6 | Enterprise component library |
| State | TanStack Query | Server state management |
| ORM | Drizzle ORM | Type-safe database access |
| Database | Neon Postgres (serverless) | Persistent storage |
| Storage | Driver-based (Local/Cloudinary/S3) | Pluggable photo upload |
| Validation | Zod | Schema validation |
| Testing | Vitest, Playwright | Unit + E2E tests |
| Deploy | Vercel | Production hosting |
Key Features
- Stock Management — Track frozen-food inventory across multiple freezers and locations
- Dashboard — Summary cards with stock levels, recent activity, and alerts
- Product CRUD — Create, read, update, delete products with categories
- Photo Upload — Pluggable storage backends (local filesystem, Cloudinary, S3-compatible)
- Item Detail Pages — Individual product views with stock history
- Responsive Design — Works on desktop and mobile for warehouse staff
Technical Decisions
- Next.js 16 with App Router for server components and API routes
- Ant Design for enterprise-grade components without building from scratch
- Drizzle ORM for type-safe database access with SQL-like syntax
- Neon Postgres for serverless PostgreSQL without managing infrastructure
- Driver-based storage for flexibility across deployment environments
Challenges
- Building a certification-ready application required more attention to documentation and code quality than typical projects
- The pluggable storage abstraction needed to work consistently across local, Cloudinary, and S3 backends
- Balancing feature completeness with code cleanliness under assessment deadlines
Outcome
The application was submitted for BNSP certification assessment. It demonstrated full-stack proficiency with Next.js, TypeScript, and modern development practices.
Final Thoughts
Frozeria Next was the project that tied everything together. Campus projects taught me the fundamentals, competitions taught me to build under pressure, internships taught me production patterns, and this project proved I could combine all of it into a polished application.