{"id":49868634,"url":"https://github.com/miguelpadin/sila","last_synced_at":"2026-06-26T01:01:07.111Z","repository":{"id":344231561,"uuid":"1179797765","full_name":"miguelpadin/sila","owner":"miguelpadin","description":"Photography portfolio website for Sila Padín Studio — built with Astro and deployed on Vercel","archived":false,"fork":false,"pushed_at":"2026-06-25T18:16:50.000Z","size":317583,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-25T19:14:40.064Z","etag":null,"topics":["astro","javascript","photography","photography-website","portfolio","ssg","vercel","web-development"],"latest_commit_sha":null,"homepage":"https://silapadin.com","language":"Astro","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/miguelpadin.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-12T11:47:34.000Z","updated_at":"2026-06-25T18:16:47.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/miguelpadin/sila","commit_stats":null,"previous_names":["miguelpadin/sila"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/miguelpadin/sila","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miguelpadin%2Fsila","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miguelpadin%2Fsila/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miguelpadin%2Fsila/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miguelpadin%2Fsila/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/miguelpadin","download_url":"https://codeload.github.com/miguelpadin/sila/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miguelpadin%2Fsila/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34798183,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-25T02:00:05.521Z","response_time":101,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["astro","javascript","photography","photography-website","portfolio","ssg","vercel","web-development"],"created_at":"2026-05-15T04:06:58.282Z","updated_at":"2026-06-26T01:01:07.083Z","avatar_url":"https://github.com/miguelpadin.png","language":"Astro","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sila Padín Studio — Website\n\n\n[![Astro](https://img.shields.io/badge/Astro-6.2.2-BC52EE?style=for-the-badge\u0026logo=astro\u0026logoColor=white)](https://astro.build) [![TypeScript](https://img.shields.io/badge/TypeScript-6.0.3-3178C6?style=for-the-badge\u0026logo=typescript\u0026logoColor=white)](https://www.typescriptlang.org) [![Vercel](https://img.shields.io/badge/Vercel-deploy-000000?style=for-the-badge\u0026logo=vercel\u0026logoColor=white)](https://vercel.com)\n\nPhotography portfolio and brand website for [Sila Padín Studio](https://www.silapadin.com), a photographer based in Galicia, Spain, specialising in editorial, maternity, portrait, lifestyle, and wedding photography.\n\nThe site is built as a fast static experience with a strong editorial feel: image-led pages, service and portfolio routes, legal/privacy content, SEO metadata per page, accessible navigation patterns, and a consent-based analytics flow.\n\n## Tech stack\n\n- [Astro 6.2.2](https://astro.build) — static site generation, file-based routing, shared layouts, and componentized page structure.\n- [TypeScript 6.0.3](https://www.typescriptlang.org) — type checking through `astro check` before production builds.\n- Vanilla CSS — custom properties, responsive layouts, reduced-motion support, focus states, and project-wide styling in `src/styles/global.css`.\n- Vanilla JavaScript — mobile navigation, reveal animations, portfolio filters, current-year rendering, and cookie consent handling in `public/main.js`.\n- [Vercel](https://vercel.com) — static hosting for the generated `dist/` output, with the production domain redirect configured in `vercel.json`.\n- Release automation — Release Please is configured for Conventional Commits, changelog updates, SemVer tags, and GitHub Releases.\n\n## Project focus\n\n- **SEO:** shared metadata in `BaseLayout`, canonical URLs, `hreflang`, robots directives, Google Search Console verification, Open Graph, Twitter cards, JSON-LD structured data, `sitemap.xml`, and `robots.txt`.\n- **Accessibility:** Spanish document language, skip link, labelled navigation, `aria-current`, menu state with `aria-expanded`, visible focus styles, screen-reader-only status updates, live regions, and reduced-motion fallbacks.\n- **Performance:** static output, WebP image assets, preconnected font origins, direct asset references, and HTML kept readable with `compressHTML: false`.\n- **Privacy:** cookie banner with explicit accept/reject actions; Google Analytics loads only after consent is accepted.\n- **Deployment:** Git-based auto-deploys are disabled in Vercel; pull requests get preview deployments, while production deploys only when Release Please creates a SemVer tag.\n\n## Project structure\n\n```\nsrc/\n  components/     # Header, Footer, CookieBanner\n  layouts/        # BaseLayout (shared HTML shell, SEO meta tags)\n  pages/          # One .astro file per route\n  styles/         # global.css\npublic/\n  assets/         # Images (WebP), favicon, brand assets\n  sitemap.xml\n  robots.txt\n```\n\n## Development\n\n```bash\npnpm install\npnpm dev        # starts dev server at http://localhost:3000\npnpm build      # production build → dist/\npnpm preview    # preview the production build locally\n```\n\n## Pages\n\n| Route | Description |\n|-------|-------------|\n| `/` | Home |\n| `/portafolio.html` | Portfolio gallery |\n| `/servicios.html` | Services |\n| `/historias.html` | Stories / weddings |\n| `/sobre-mi.html` | About |\n| `/contacto.html` | Contact |\n| `/aviso-legal.html` | Legal notice |\n| `/politica-de-cookies.html` | Cookie policy |\n| `/politica-de-privacidad.html` | Privacy policy |\n\n## Deployment\n\nVercel Git auto-deploys are disabled through `vercel.json` so pushes to `main` do not publish production directly.\n\nProduction releases are handled by Release Please. When a release PR is merged, Release Please creates the GitHub Release and `vX.Y.Z` tag; the same workflow checks out that tag and deploys it to Vercel production.\n\nPreview deployments run from GitHub Actions on pull requests targeting `main`. The preview workflow builds with Vercel CLI, deploys a non-production preview, and comments the preview URL back on the PR.\n\nThe deployment workflows require these GitHub Actions secrets:\n\n- `VERCEL_TOKEN`\n- `VERCEL_ORG_ID`\n- `VERCEL_PROJECT_ID`\n\nOptionally, `RELEASE_PLEASE_TOKEN` can be set to a GitHub personal access token if release PRs should trigger preview workflows and other checks created by GitHub Actions.\n\nThe domain `sila-fawn.vercel.app` redirects to `www.silapadin.com` via a 301 configured in `vercel.json`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiguelpadin%2Fsila","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmiguelpadin%2Fsila","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiguelpadin%2Fsila/lists"}