- Next.js App Router
- React
- TypeScript
- CSS Modules and global CSS design tokens
- Bun for dependency management and scripts
The site uses next/font for its typography, static metadata for search and social sharing, and public/logo.svg as the site favicon and brand mark.
makeshift/
├── .github/
│ └── workflows/
│ └── lint.yml # CI format and lint checks
├── app/
│ ├── components/ # Shared page components
│ │ ├── Footer/
│ │ ├── HeroTerminal/
│ │ ├── Navbar/
│ │ └── ScrollReveal.tsx
│ ├── globals.css # Global styles and design tokens
│ ├── layout.tsx # Root layout and site metadata
│ ├── page.tsx # Homepage
│ └── page.module.css # Homepage styles
├── public/
│ └── logo.svg # Brand mark and favicon source
├── eslint.config.mjs # ESLint flat configuration
├── next.config.mjs # Next.js configuration
├── package.json # Scripts and dependencies
├── tsconfig.json # TypeScript configuration
└── bun.lock # Locked Bun dependency versions
Install Bun. The project uses the Bun lockfile, so Bun should be used for installation and scripts.
git clone https://github.com/makeshift-engineering/makeshift.git
cd makeshift
bun install --frozen-lockfileStart the development server:
bun run devOpen http://localhost:3000 in your browser. Changes to files under app/ are reflected automatically.
Create an optimised production build:
bun run buildServe the generated build locally:
bun run startThe application is a standard Next.js deployment and can be deployed to a platform with Next.js support, such as Vercel. Configure the deployment from the repository’s hosting provider and use bun run build as the build command.
This repository contains the Makeshift Engineering website. If you find a problem or have an idea for improvement, open an issue or pull request in makeshift-engineering/makeshift.
Please keep changes focused, preserve the existing visual language, and run all quality checks before submitting a pull request.