About
Description of Hello Astro Starter
This is multi-purpose Astro starter template based on the following:
- Astro as a modern static site generator
- TypeScript
- TailwindCSS and TailwindUI
- Iconify
- Hero Patterns
- unDraw for illustrations
- Markdown
- MDX
- Markdoc
- Schema.org and JSON for Linking Data, type-checked using schema-dts
- Open Graph used by Facebook
- Twitter Cards
- Local full text search using Pagefind
- Math equations using KaTeX via Sätteri markdown processor
- Diagrams using Mermaid via astro-mermaid, Markmap and PlantUML via custom Sätteri diagram plugins
- Open Street Map using Leaflet via Astro Leaflet
- reading-time
- PhotoSwipe
- exifr
- Swiper via Astro Swiper
- Masonry layout using Astro Masonry
It follows the JAMstack architecture by automatically building a static version from the Git repository. The demo is deployed on Github Pages.
Hello Astro can used for any/all of the following:
- corporate/marketing site
- blog
- documentation site
- portfolio site supporting photo galleries
This starter is open source (MIT licence) - fork it and customise for your needs.
Features
- Author content in a mix of Markdown, MDX and Markdoc
- Full-featured blog with frontmatter (title, description, author, date, image, tags)
- High performance low overhead with minimal Javascript (Vanilla JS) - fully optimized to hit 100% scores on all Lighthouse audit categories
- Full text client based search of blog pages via Pagefind client-side search (avoiding external CDN loading, fully CSP compliant and offline-capable)
- Index page and individual pages for authors, categories and tags, including pagination
- Support for RSS feed, sitemap and robots.txt
- SVG design (unDraw, Hero Patterns, Iconify)
- Support for code syntax highlighting
- Full SEO support including Open Graph, Twitter Cards and Schema.org via JSON-LD
- Full support for light and dark UI modes, as well as following system preferences, in accordance to TailwindCSS recommendation
- Customised 404 error page
- Display math equations using KaTeX via the Sätteri markdown processor (enclosed in
$…$or$$…$$) - Display Mermaid, Markmap, PlantUML diagrams (authored as a code block with language
mermaid,markmapandplantuml). PlantUML diagrams are compiled at build time into high-quality vector SVGs rather than raster PNGs. - Display map at geo coordinates and zoom level using
Mapcomponent (need to also includeextra: ['map']in frontmatter to load CSS/JS assets for page) - Calculates and show reading time for blog posts
- CSS/JS assets of external libraries loaded only when needed on a per page and per package basis - no unnecessary bloat
- Photo gallery and lightbox using PhotoSwipe (including display of EXIF tags)
- Carousel component using Swiper
- Documentation pages (modelled after astro docs starter but using Tailwind)