Astro source for the PyVista landing page at pyvista.org.
Install dependencies:
npm installStart the local development server:
npm run dev -- --hostBuild the static site:
npm run buildPreview the production build locally:
npm run preview -- --hostThe hero renders and example animations under public/images/ are produced
locally by a PyVista script and committed to the repo:
npm run render:screenshotsThe script requires uv (used to install
PyVista and imageio into an ephemeral environment). Outputs go to
public/images/*-{light,dark}.{jpg,gif} and are referenced from
src/data/site.ts.
All styling, linting, and formatting is enforced through pre-commit:
pre-commit install # install hooks (once)
pre-commit run --all-files # run on the whole repoThe configuration runs Prettier (JS / TS / Astro / CSS / JSON / YAML / Markdown), Ruff (Python lint + format), and a handful of hygiene hooks.
Both the main branch and every pull request are deployed through Netlify by
.github/workflows/build.yaml:
- Pushes to
mainpublish to the production site atpyvista.org. - Pull requests publish a preview URL attached to the PR as a deployment status and as a sticky PR comment.
The workflow uses the NETLIFY_AUTH_TOKEN and NETLIFY_SITE_ID repository
secrets.