Public bilingual portfolio for Aaron Rosas, built with Astro and deployed to GitHub Pages. The site focuses on backend engineering, cloud, application delivery, technical writing, and selected personal interests.
| English | Español | Purpose |
|---|---|---|
/ |
/es/ |
Home |
/about |
/es/about |
Profile and experience |
/portfolio |
/es/portfolio |
Published work and reserved project shells |
/blog |
/es/blog |
Technical articles; current posts are in English |
/contact |
/es/contact |
Contact form and public profiles |
The previous site is preserved under /legacy/. During Astro development,
that route redirects to /legacy/index.html; the original files remain in
public/legacy/.
Use Node.js 22.12 or newer. The version expected by local tooling is declared
in .nvmrc.
npm ci
npm run devOpen http://localhost:5000.
docker compose up --buildThe repository is mounted into the container for Astro hot reload. Stop it
with Ctrl+C, or from another terminal:
docker compose downnpm run buildThe static build is generated in dist/. The repository currently does not
define separate test or lint scripts.
src/data/profile.ts: approved public profile facts and translations.src/components/pages/: shared bilingual page implementations.src/pages/: thin English and Spanish route entry points.src/content.config.ts: typed Astro content collections and loaders.src/content/blog/: MDX articles.src/content/portfolio/: published work and explicit project placeholders.public/legacy/: preserved previous website.
Portfolio placeholders must not contain invented claims, repository URLs, or demo URLs. Replace a placeholder only when the corresponding work is ready to publish.