This repository contains the source for the Tandem Creative Dev marketing site. It is built with Next.js 15 and TypeScript and uses the App Router. The site showcases services, recent work and testimonials, and includes a contact form powered by Nodemailer.
- TypeScript & React 19 – modern React with strict typing.
- Tailwind CSS – styling via Tailwind (see
tailwind.config.ts). - Custom Fonts – locally hosted fonts configured in
src/fontsand applied vianext/font. - Data Driven – navigation, services, projects and form fields are defined in JSON files under
src/data. - Geolocation Time Display – the header/footer show your local time using the
Timecomponent andgeolocation-db.com. - Contact Form – posts to
/api/contactand sends confirmation emails through Nodemailer. - Accessibility Considerations – responsive layout with animated components that respect "prefers-reduced-motion".
- Commit Hooks – Husky and Commitlint enforce commit message style.
Install dependencies and create a .env.local with mail credentials used by Nodemailer:
EMAIL_HOST=your.smtp.host
EMAIL_PORT=587
EMAIL_SECURE=false
EMAIL_USER=username@example.com
EMAIL_PASSWORD=yourpasswordThen run the development server:
npm install
npm run devThe app will be available at http://localhost:3000.
npm run build– build for production.npm run start– start the compiled app.npm run lint– run ESLint (next/core-web-vitals).
src/app– Next.js routes including the main page and privacy policy.src/components– UI and layout components.src/data– JSON content used throughout the site.src/utils– helper utilities (Nodemailer setup, timezone functions).public– static assets such as images used in the portfolio.
All content © Tandem Creative Dev. See individual source files for license details.