- Years
- 2025 - PresentActive
Gate Gate Gallery - a contemporary art space and meeting point for cultures, built as a catalyst for experiment and new work. A bilingual Next.js site with an exhibition programme and an online shop, an Ant Design admin behind it, and a Fastify API on Drizzle and PostgreSQL. Built and maintained on my own.
What I built
- Modelled the gallery itself - exhibitions, artists, works, events, posts, categories, tags and banners - with a work viewer that opens artwork in place with smooth transitions.
- Built the shop end to end: products with variants and categories, cart with stock validation, checkout, a voucher system with usage tracking, order management with status transitions, and confirmation emails.
- Wired payment through a webhook with unique order codes and automatic status reconciliation, and pushed new-order and status events to a Telegram bot so the gallery hears about a sale immediately.
- Made the site bilingual with locale-prefixed routing and middleware-level redirects, and gave the admin a Tiptap editor for long-form exhibition and post copy.
- Kept the codebase tidy under a type-safe oRPC layer between API and clients, with Biome for formatting and linting.
Stack
- Next.js
- React
- Tailwind CSS
- Fastify
- oRPC
- Drizzle ORM
- PostgreSQL
- Vite
- Ant Design
- Tiptap