No updates detected yet. GitHub releases will appear here.
Crewly marketing site and waitlist — crewly.app. Separate from the product app.
翻訳待ち
Loading the full README.
Read the full README ↗The public marketing site at crewly.app. Right now that means one thing: the waitlist page. Target is 100 sign-ups.
The product lives in crewly-app and
is about to be rebuilt from the demo into the real thing. That work will break
things regularly — that is what building looks like.
This site cannot go down while that happens. It is collecting sign-ups. So the two are separate repos with separate deploys, and neither can take the other down.
Rule of thumb: if it is something a stranger sees before they sign up, it belongs here. If it is something a logged-in user does, it belongs in crewly-app.
Blocking. Must be fixed before this goes live.
handleSubmit in src/app/page.tsx waits 800ms and shows the success state.
It does not send the address anywhere:
// TODO: Replace with actual Mailchimp/Beehiiv integration
await new Promise(resolve => setTimeout(resolve, 800));
The page looks finished, which is what makes this dangerous — a launch week could pass, a hundred people could sign up, and none of it would be kept.
The consent checkbox also tells people their email "will be stored securely". That is not true today, and collecting UK consent for something that is not happening is not somewhere to be casual.
Pick a destination (Mailchimp, Beehiiv, a hosted database), wire the handler to it, and confirm a real address arrives before launching.
npm install
npm run dev # http://localhost:3000
npm run build # production build — must pass before deploying
Already done, kept as a record of how it was put together:
create-next-app (TypeScript, Tailwind, ESLint, App Router,
src/ directory, @/* alias) to match crewly-app's stack.crewly-app, where it was first built as a
/waitlist route, and became this site's home page at /.src/app/layout.tsx.A note if you ever scaffold into this repo again: create-next-app refuses
to run in a folder that already contains files, and this one has a README.
Renaming it to .bak does not help — that is still a file. Delete it, scaffold,
then git checkout README.md to bring it back from git.
These live in src/app/globals.css under :root, copied from crewly-app so the
site and the app match:
--lime: #C8F04C;
--lime2: #B4DE3A;
--violet: #7A5AF8;
--coral: #F2685C;
--sky: #92AEDC;
--green: #4FA463;
--tan: #E5B173;
--leaf: #5E9455;
--ink: #141414;
--ink2: #0E0E10;
--card: #1b1b1d;
--card2: #242427;
--mut: #9a9a9f;
--paper: #FFFFFF;
--background: var(--ink2);
--foreground: var(--paper);
Character artwork is in crewly-app/public/characters/. Copy in whatever the
page uses.
If the colours ever change, they change in both repos. Worth a shared package eventually; not worth it yet.
Railway, as its own service, pointed at this repo. Separate from crewly-app's service — that separation is the whole point.
Production branch is main.