Repository navigation
Getting Started
This guide produces a locally running StarryBio site, replaces the starter profile, and prepares one portable build for GitHub Pages, Cloudflare, Vercel, Netlify, or another static host. All normal site changes begin in config/starrybio.config.ts.
- Node.js 24.x or 26.0.0+ (
.node-versionselects 24.x for supported provider builds). - pnpm 12.3.4 (pinned in
package.json). - An account with your chosen host only when you are ready to deploy.
StarryBio uses no application environment variables, database, storage bucket, or secret during a normal installation. Do not create a .env file expecting it to change site configuration; the build reads config/starrybio.config.ts instead.
-
Clone your copy of the repository and enter it.
git clone https://github.com/nota9x/StarryBio.git cd StarryBio -
Install the project’s locked dependencies.
pnpm install
-
Start the local development server.
pnpm dev
This command first validates the configuration, regenerates any configured Simple Icons and generated downloads, then starts Astro. Open the local address that Astro prints in the terminal.
-
Keep that command running while you edit
config/starrybio.config.ts. A saved change to that file triggers a full browser reload, so you can see configuration changes immediately.
The supplied configuration is a complete, working example. Replace its identity and public URLs before deploying.
const config = {
pageTitle: "Your Name — Links",
favicon: "assets/images/default/favicon.svg",
profile: {
name: "Your Name",
description: "A short description of what you do.",
image: "assets/images/default/profile.svg",
},
sections: [
{
title: "Find me online",
links: [
{
label: "GitHub",
subtitle: "@your-name",
url: "https://github.com/your-name",
icon: { simpleIcon: "GitHub" },
},
],
},
],
} satisfies StarryBioConfig;pageTitle, profile, and sections are required. At least one section must exist, although a section may later be hidden by its visibility settings. The configuration is strict: unknown or legacy properties make the build fail instead of being ignored.
Use Managing Content for links, copy buttons, and scheduled visibility. Use Assets and Generated Downloads before replacing image paths or enabling downloads.
Run these checks before publishing a content change:
pnpm validate
pnpm build
pnpm preview-
pnpm validatechecks the schema and verifies that referenced local assets exist underpublic/. -
pnpm buildrepeats validation, creates configured generated files and Simple Icons, and writes the deployable site todist/. -
pnpm previewbuilds and servesdist/through Astro without selecting a deployment provider. Usepnpm preview:cloudflarewhen you specifically need to check Wrangler’s routing and_headersbehavior.
While previewing, verify the home page, a deliberately unknown path (which should show the custom 404 page), every download you enabled, and any analytics browser request only if you are comfortable sending test traffic.
- Choose a theme and layout in Appearance and Branding.
- Configure your canonical public URL and sharing metadata in SEO and Analytics.
- Choose a host in Deployment Overview, then follow its deployment guide.
If the first command fails, start with the matching symptom in Troubleshooting.
StarryBio · 🏠 Home · ✨ Configure · 🚀 Deploy · 🩺 Troubleshoot · 🛠 Developer guide
Static link-in-bio setup, operation, and development guides.
- Configuration Reference
- Managing Content
- Appearance and Branding
- Availability and Announcements
- Assets and Generated Downloads
- SEO and Analytics