ab232dd10f
* refactor: restructure components, kill dead code * nit: tweak base styles * nit: remove unneeded code comments * refactor: replace unused permalink with canonicalURL * refactor: add missing prop types * feat: make markdown examples more interesting * chore: consistent semis and quotes * chore: astro check failures * fix: bad url prop * fix: bad frontmatter quote * chore: more dead styles * chore: add header gap * refactor: use tsx for likebutton * fix: restore post sorting * chore: remove unused flex-row util * fix: small md formatting on README * chore: run through astro-plugin-prettier * fix: revert to double quotes * fix: manually move style outside <body> * fix: update file tree in README * refactor: publish-date -> time * refactor: remove unused div and margin * refactor: publishDate -> time on layout * refactor: .heroImage -> img * refactor: .logo -> svg * feat: update social image, remove jpg * fix: remove prism stylesheet!
2.4 KiB
2.4 KiB
Astro Starter Kit: Blog
npm init astro -- --template blog
🧑🚀 Seasoned astronaut? Delete this file. Have fun!
Features:
- ✅ SEO-friendly setup with canonical URLs and OpenGraph data
- ✅ Full Markdown support
🚀 Project Structure
Inside of your Astro project, you'll see the following folders and files:
├── public
│ ├── assets
│ │ └── blog
│ │ └── introducing-astro.jpg
│ ├── favicon.ico
│ ├── social.jpg
│ └── social.png
├── src
│ ├── components
│ │ ├── Author.astro
│ │ ├── BaseHead.astro
│ │ ├── BlogPostPreview.astro
│ │ ├── FollowMe.astro
│ │ ├── Header.astro
│ │ └── LikeButton.tsx
│ ├── layouts
│ │ └── BlogPost.astro
│ ├── pages
│ │ ├── index.astro
│ │ └── posts
│ │ ├── interactive-content.md
│ │ └── static-content.md
│ └── styles
│ └── blog.css
├── astro.config.mjs
├── README.md
├── package.json
└── tsconfig.json
Astro looks for .astro
or .md
files in the src/pages/
directory. Each page is exposed as a route based on its file name.
There's nothing special about src/components/
, but that's where we like to put any Astro/React/Vue/Svelte/Preact components.
Any static assets, like images, can be placed in the public/
directory.
🧞 Commands
All commands are run from the root of the project, from a terminal:
Command | Action |
---|---|
npm install |
Installs dependencies |
npm run dev |
Starts local dev server at localhost:3000 |
npm run build |
Build your production site to ./dist/ |
npm run preview |
Preview your build locally, before deploying |
👀 Want to learn more?
Feel free to check our documentation or jump into our Discord server.