45 lines
1.8 KiB
Markdown
45 lines
1.8 KiB
Markdown
# Woiken Website
|
|
|
|
The landing page for [woiken.com](https://woiken.com), a coming-soon page for Woiken.
|
|
|
|
It's a single page built with Next.js 16 and exported as static files. Scrolling opens a
|
|
framed sky photo up to full screen, where the "A new cloud, coming soon." tagline fades in.
|
|
|
|
## Commands
|
|
|
|
| Command | Action |
|
|
| :------------------------- | :-------------------------------------------------- |
|
|
| `pnpm install` | Install dependencies |
|
|
| `pnpm dev` | Start the dev server at `localhost:3000` |
|
|
| `pnpm build` | Build the static site to `./out/` |
|
|
| `pnpm lint` | Lint with ESLint |
|
|
| `pnpm exec wrangler dev` | Serve `./out/` locally the way Cloudflare will |
|
|
|
|
Use pnpm 12. `pnpm start` doesn't work, because the site is a static export (`output: "export"`).
|
|
|
|
## Project structure
|
|
|
|
```
|
|
.
|
|
├── app/
|
|
│ ├── page.tsx # The landing page
|
|
│ ├── layout.tsx
|
|
│ └── globals.css # Tailwind + photo darkening
|
|
├── components/
|
|
│ └── ScrollExpand/ # Scroll-to-expand hero (from React Bits)
|
|
├── public/
|
|
│ └── grass-field.jpg # Hero photo
|
|
├── wrangler.jsonc # Cloudflare Worker config
|
|
└── .gitea/workflows/deploy.yml
|
|
```
|
|
|
|
## Deployment
|
|
|
|
Every push to `main` deploys the site via `.gitea/workflows/deploy.yml`. The workflow builds
|
|
the site and runs `wrangler deploy`, which uploads `./out/` as static assets to the
|
|
`woiken-website` Worker on the `woiken.com` custom domain.
|
|
## Credits
|
|
|
|
Hero photo: [grass field at daytime](https://unsplash.com/photos/grass-field-at-daytime-PEm_sLmJT-w)
|
|
on Unsplash.
|