How to Deploy Your Static Template
Get your FSEVO static template live in minutes — step-by-step for Vercel, Netlify, and GitHub Pages. No backend required.
Static templates from FSEVO are pure Astro sites — no backend, no database, no CMS. You edit content directly in the source files and deploy in one push. This guide covers the three recommended platforms.
Recommended platforms (in order): Vercel → Netlify → GitHub Pages
What You Get
When you purchase a static template from FSEVO, you receive access to a private GitHub repository containing:
- The complete Astro source (pages, components, styles, content)
.env.examplewith any required environment variables- This guide
Step 1 — Get Repository Access
After purchase you will receive a GitHub collaborator invite by email. Accept it, then clone the repo:
git clone https://github.com/fsevo/your-template-name
cd your-template-name
npm install
If you do not receive the invite within 10 minutes, check spam or email fullstackevolved@gmail.com with your order confirmation.
Step 2 — Run Locally
Before deploying, confirm everything works on your machine:
npm run dev
Open http://localhost:4321 — the site should load with demo content. If it does, you are ready to deploy.
Option A — Vercel (Recommended)
Vercel has the best Astro support, zero-config deploys, and a generous free tier. This is the platform we use and recommend first.
- Go to vercel.com and sign in (GitHub login works)
- Click Add New Project → import your repository
- Vercel auto-detects Astro — build settings are correct by default
- If the template has environment variables, add them under Environment Variables before deploying
- Click Deploy
Your site will be live at your-project.vercel.app in about 60 seconds.
To connect a custom domain: go to Settings → Domains, add your domain, and follow the DNS instructions. Vercel handles HTTPS automatically.
Option B — Netlify (Recommended)
Netlify is equally capable and a great alternative if you prefer it or already have an account.
- Go to netlify.com and sign in
- Click Add new site → Import an existing project
- Connect your GitHub account and select the repository
- Build settings will be detected automatically:
- Build command:
npm run build - Publish directory:
dist
- Build command:
- If needed, add environment variables under Site configuration → Environment variables
- Click Deploy site
Your site will be live at your-site.netlify.app in under a minute.
To connect a custom domain: go to Domain management in your site settings, add your domain, and update your DNS records as instructed.
Option C — GitHub Pages
GitHub Pages is free but has some limitations — it works best when your repository is public, and requires a small config change.
1. Update astro.config.mjs
Set the site and base to match your GitHub Pages URL:
// astro.config.mjs
export default defineConfig({
site: 'https://your-username.github.io',
base: '/your-repo-name',
// ... rest of config
});
If you are using a custom domain, set site to your domain and base to '/'.
2. Add the GitHub Actions workflow
Create .github/workflows/deploy.yml:
name: Deploy to GitHub Pages
on:
push:
branches: [main, master]
jobs:
build-and-deploy:
runs-on: ubuntu-latest
permissions:
contents: read
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
- run: npm install
- run: npm run build
- uses: actions/upload-pages-artifact@v3
with:
path: dist
- id: deployment
uses: actions/deploy-pages@v4
3. Enable GitHub Pages
In your repository, go to Settings → Pages, set source to GitHub Actions, and save.
Push to main — the workflow will run and your site will be live at https://your-username.github.io/your-repo-name/.
Editing Content
All content lives in src/content/ (JSON or Markdown files). Open any file, edit the text, and push to redeploy. On Vercel and Netlify, every push to main triggers an automatic rebuild — no manual deploys needed.
Troubleshooting
Build fails on deploy
Run npm run build locally first. If it fails locally, fix it there before pushing. The most common cause is a missing environment variable.
Images not showing on GitHub Pages
Make sure base in astro.config.mjs matches your repo name exactly, including capitalization. All internal links use import.meta.env.BASE_URL — do not hardcode /.
Site deploys but styles are missing
Same issue — check the base config in astro.config.mjs.
Custom domain not propagating DNS changes take 1 minute to 24 hours. Vercel and Netlify both show propagation status in their dashboards.
Need Help?
Email fullstackevolved@gmail.com with your order reference and a description of the issue. Response time is under 24 hours.