Back to portfolio
Next.js 16React 19TypeScriptPrismaCMS

Arshin Kids Preschool — Website & Enrollment System

Full design and development of a website and dedicated admin system for a preschool in Karaj, Iran — from a warm, kid-friendly UI to a custom CMS and online enrollment form. Solo, end-to-end.

Overview

Arshin Kids Preschool is a complete, live website for a preschool and kindergarten in the Jahanshahr district of Karaj, Iran. The site is fully Farsi, right-to-left (RTL), and built around attracting and enrolling new students. I built the entire project solo, start to finish — from UI/design-system work to full-stack development and deployment on Vercel.

The Problem

The preschool had no structured online presence. Program information, news, and photos had nowhere to be published, and families had to enroll in person or by phone. What was needed was a website that felt trustworthy and warm to parents, while letting the school's director manage the site's content herself, with no technical knowledge required.

The Solution

I designed and built a full-stack website with a dedicated admin panel:

  • Full content management system (CMS): the director manages news, curriculum programs, a photo gallery, staff bios, and enrollment requests through an admin panel — no developer required.
  • Online enrollment form: Zod validation, a honeypot field against spam, rate limiting, and a simultaneous database write + notification email via a Promise.allSettled pattern (the database write is required; email failure is non-fatal).
  • Hand-rolled authentication: JWT sessions with jose (HS256) and an httpOnly cookie protecting the entire admin section — no dependency on a heavy auth library.
  • Local SEO foundation: LocalBusiness/Preschool JSON-LD structured data, a sitemap, robots.txt, an llms.txt file for AI crawlers, security headers, and a social-share (OG) image.
  • Warm, kid-friendly design: a floating glassmorphism header, a cheerful color system meeting AA contrast standards, full RTL layout, and Persian numerals used throughout the site.

The Outcome

An independent, trustworthy website that families use to learn about the school and submit enrollment requests directly, with the director keeping its content current without needing a developer for anything. The whole project runs on Vercel, live at arshinkids.com.

Tech Stack

Next.js 16 (App Router, Turbopack) · React 19 · TypeScript · Tailwind CSS v4 · Vazirmatn (self-hosted) · Neon Postgres + Prisma 7 · JWT (jose) · Resend · Vercel Blob · Upstash · Vercel


Looking for something similar? See my web development services or get in touch.

Arshin Kids Preschool — Website & Enrollment System | Pouya Karimi