This project is a satirical website that parodies the typical Y Combinator startup. The aim is to showcase the common design patterns, marketing language, and feature presentations used by tech startups today, with a humorous twist.
"Matteo" serves as our fictional SaaS product/platform, complete with all the startup tropes:
- Minimalist design with vibrant call-to-action buttons
- Vague yet promising value propositions
- Integration ecosystem charts
- Pricing tiers (including the obligatory "Enterprise/Contact Us" option)
- Testimonials from "satisfied customers"
- A roadmap promising revolutionary features
This project was created to:
- Demonstrate common web design patterns used in startup marketing sites
- Provide a template for developers creating landing pages
- Highlight (with humor) the formulaic nature of many startup websites
- Serve as a design study of effective and ineffective marketing tactics
- Show conversion from static HTML/CSS/JS to modern React + Next.js
- Responsive design that works on mobile and desktop
- Modern React components with TypeScript
- Interactive elements with React hooks and state management
- Server-side rendering with Next.js 15
- Component-based architecture for maintainability
- Accessibility features retained from original design
- Next.js 15 - React framework with App Router
- TypeScript - Type safety and better developer experience
- React 19 - Latest React features and hooks
- CSS3 - Original styles adapted for React
- Font Awesome - Icon library
- ESLint - Code linting and quality
- Node.js 18+
- npm or yarn
-
Clone this repository
git clone https://github.com/mbianchidev/mock-startup-website.git cd mock-startup-website -
Install dependencies
npm install
-
Run the development server
npm run dev
-
Open http://localhost:3000 in your browser
This repo is configured to deploy the site as a static export to GitHub Pages.
- Workflow:
.github/workflows/static.yml - Output directory:
out/(generated bynext buildwithoutput: 'export') - For repository pages (user/org subpath), we set
NEXT_BASE_PATH=/<owner>/<repo>during the workflow so assets work under the subpath.
Local test of static export:
npm ci
npm run build
npx serve out
npm run build
npm startsrc/
βββ app/ # Next.js App Router pages
β βββ layout.tsx # Root layout component
β βββ page.tsx # Homepage
β βββ about/ # About page
β βββ careers/ # Careers page
β βββ customers/ # Customers page
β βββ documentation/ # Documentation page
β βββ press/ # Press page
β βββ pricing/ # Pricing page
β βββ privacy/ # Privacy page
β βββ redirect/ # Redirect pages
β βββ roadmap/ # Roadmap page
β βββ support/ # Support page
β βββ terms/ # Terms page
β βββ globals.css # Global styles
βββ components/ # Reusable React components
β βββ Header.tsx # Navigation header
β βββ Footer.tsx # Site footer
β βββ Hero.tsx # Hero section
β βββ Features.tsx # Features grid
β βββ UseCases.tsx # Use cases section
β βββ TrustedBy.tsx # Logo carousel
β βββ Integrations.tsx # Integration icons
β βββ CloudCarousel.tsx # Interactive carousel
β βββ Testimonials.tsx # Customer testimonials
β βββ Stats.tsx # Statistics component
β βββ Collapsible.tsx # Collapsible component
β βββ RedirectPage.tsx # Redirect page component
β βββ WorkInProgress.tsx # Work in progress component
β βββ SessionizeEmbed.tsx # Sessionize embed component
β βββ KubernetesDistros.tsx # Kubernetes distributions component
βββ types/ # TypeScript type definitions
β βββ index.ts
βββ data/ # JSON data files
β βββ customers.json
βββ lib/ # Utility functions
npm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run lint- Run ESLint
This project was successfully converted from a static HTML/CSS/JS website to a modern React + Next.js application. Key improvements include:
- Component-based architecture for better maintainability
- TypeScript integration for type safety
- React hooks replacing DOM manipulation
- Server-side rendering for better SEO and performance
- Modern development toolchain with hot reloading
- Accessibility improvements with semantic HTML and ARIA attributes
Contributions are welcome! See our CONTRIBUTING.md for guidelines.
This project is licensed under the terms of the license included in the LICENSE file.
- Y Combinator startups for the inspiration
- Modern SaaS companies for their predictable design patterns
- The tech industry's love for buzzwords and vague promises
Disclaimer: This is a parody project created for educational and entertainment purposes. Any similarity to actual startups is coincidental and not intended to mock specific companies.