Aug 2026 — Sep 2026
Dream Elevators (Pvt) Ltd — Business Portfolio
A single-page company profile and projects showcase for a vertical transportation company — "We Lift Your Dream."
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS
- Vercel
- pnpm
The business portfolio website for Dream Elevators. One page tells the story — about, services, chairman's message, projects, and FAQ — with a separate projects page. Visitors can send an enquiry, join the newsletter, or book a call. Pages are pre-built for speed, and every change goes live through an automated pipeline.
Tech Stack
Frontend
- Next.js 16 (App Router)
- React 19 + TypeScript
- Tailwind CSS v4
- Base UI / Radix UI
Backend
- Next.js route handlers
- Nodemailer over SMTP
Content & Integrations
- File-based JSON content (i18n-ready)
- Cal.com booking
- dotted-map SVG
DevOps
- GitHub Actions CI/CD
- Vercel
- ESLint, Prettier, pnpm
Architecture Diagram
Mostly pre-built pages, plus two small API routes for the contact and newsletter forms.
Users
Who visits
Visitor
reads, enquires, books
Company team
receives emails
Next.js app
A small proxy.ts adds the language prefix (/en)
Home page
pre-built
Projects page
pre-built
API routes
contact, newsletter
Content & services
Where things come from
JSON content
copy per section
Images & video
one source file
SMTP email
Nodemailer
Cal.com
call booking
Vercel
hosting
How It Works
How an enquiry is handled
- 01Visitor sends the form
- 02Spam checks and validation
- 03Email goes to the team
- 04Confirmation goes to the visitor
CI/CD Pipeline
Every change is checked first. Production deploys only after the checks pass, and any deployment can be rolled back.
Check
Pull request or push to main / develop
- 01Format, lint, type check, build, and security audit (in parallel)
- 02All checks must pass
Deploy
After checks pass on main, or run manually
- 01Skip if only docs changed
- 02Build
- 03Deploy to Vercel (production)
Rollback
Run manually
- 01Pick a deployment (or the previous one)
- 02Vercel rolls production back
Features
Website
- +One-page profile: hero, about, vision, chairman, services, projects, why choose us, contact, FAQ
- +Separate projects page
- +Pre-built static pages, in a dark responsive design
Enquiries & Booking
- +Contact form with phone validation — the team gets an email and the visitor gets a confirmation
- +Newsletter signup with a welcome email
- +Book-a-call popup (Cal.com) and a WhatsApp button
- +Spam protection with a honeypot field and rate limits
User Stories
Visitor
- ▸As a visitor, I want to learn about the company, its services, and past projects, so that I can decide whether to trust them with my building.
- ▸As a customer, I want to send an enquiry and get a confirmation, so that I know my message reached the team.
- ▸As a customer, I want to book a call or message on WhatsApp, so that I can talk to someone quickly.
- ▸As a visitor, I want a fast page that works well on my phone, so that I can browse easily anywhere.
Architecture & Design Patterns
- 01Server-first: pages are built ahead of time, and only forms and the hero video run in the browser
- 02All copy lives in typed JSON files, so there is no CMS and a new language is just a new folder
- 03If email isn't configured, forms still validate and show a friendly message instead of breaking
- 04CI must pass before anything is deployed, and a manual rollback workflow can restore any earlier deployment