Imported from amorphous-industries/amorphous-industries.github.io (
AGENTS.md). Install upstream withnpx skills add amorphous-industries/amorphous-industries.github.io. Copyright stays with the author.
amorphous-industries.github.io
Static website for Amorphous Industries, served at amorphous-industries.com. Built with Astro and Tailwind CSS, deployed to GitHub Pages via GitHub Actions.
Project Structure
src/
layouts/
BaseLayout.astro # Shared layout (header, nav, footer)
pages/
index.astro # Home page
about.astro # About page
styles/
global.css # Tailwind directives + custom gradient class
public/
CNAME # Custom domain: amorphous-industries.com
logo_no_text.png # Background image (radial gradient overlay)
slack_logo.svg # Footer Slack link icon
mail_icon.svg # Footer email link icon
.github/
workflows/
deploy.yml # Build + deploy to GitHub Pages on push to main
astro.config.mjs # Astro config (Tailwind integration, site URL)
tailwind.config.mjs # Tailwind config (content paths)
package.json # Dependencies and scripts
Key Concepts
- Astro pages (
.astrofiles insrc/pages/) map directly to routes:index.astro→/,about.astro→/about/. - BaseLayout defines the shared structure (dark background, nav, footer). Pages fill the
<slot />with their content. - Tailwind CSS provides all styling via utility classes. The one custom class (
bg-cover-gradientinglobal.css) handles the radial gradient + logo background that can't be expressed as utilities. - No rendered HTML is committed.
dist/is gitignored. GitHub Actions builds the site and deploys it. - Custom domain is set via
public/CNAME(Astro copies it todist/on build). DNS is configured in Route53 via theai-infrarepo.
Build
Requires Node.js 20+.
# Install dependencies (one-time)
npm install
# Dev server with hot reload (http://localhost:4321)
npm run dev
# Production build (outputs to dist/)
npm run build
# Preview production build locally
npm run preview
Development Workflow
All changes to main must go through a pull request — direct pushes are blocked by branch protection.
-
Create a feature branch from
main:git checkout main && git pull git checkout -b <branch-name> -
Edit
.astrofiles insrc/— pages insrc/pages/, layout insrc/layouts/, styles insrc/styles/. -
Preview with the dev server:
npm run dev -
Commit your changes:
git add src/ public/ git commit -m "<description>" -
Push and open a PR:
git push -u origin <branch-name> gh pr create --title "<title>" --body "<description>" -
Merge when ready:
gh pr merge --merge -
Clean up:
git checkout main && git pull git branch -d <branch-name>
GitHub Actions builds and deploys automatically when PRs merge to main.