Cyril Šebek
a1b94ae545
- Updated REAMDE.md to reflect current file & folder structure - Fixed Navbar not working - Added middleware exceptions for api and public/ (to not auto link to i18n version) - Fixed blog [slug] and [tag] pages not rendering properly (prerender = true)
2.7 KiB
2.7 KiB
My personal website
Welcome to my personal website
🚀 Project Structure
The file & folder structure is as follows:
/
├── public/
│ ├── favicon.svg
│ └── music/
│ ├── first/
│ │ ├── my.flac
│ │ ├── my.mp3
│ │ └── my.pdf
│ ├── second/
│ └── .../
├── src/
│ ├── components/
│ ├── content/
│ │ ├── blog/
│ │ │ ├── blog-post-1/
│ │ │ │ ├── cs.md
│ │ │ │ ├── de.md
│ │ │ │ ├── en.md
│ │ │ │ └── fr.md
│ │ │ ├── blog-post-2/
│ │ │ └── .../
│ │ ├── music/
│ │ │ ├── first.md
│ │ │ ├── second.md
│ │ │ └── ...
│ │ └── config.js
│ ├── i18n/
│ │ ├── cs.js
│ │ ├── de.js
│ │ ├── en.js
│ │ ├── fr.js
│ │ ├── dictionary.js
│ │ └── utils.ts
│ ├── icons/
│ ├── layouts/
│ ├── lib/
│ │ ├── icons.js
│ │ └── utils.js
│ ├── pages/
│ ├── style/
│ │ └── index.css
│ ├── env.d.ts
│ └── middleware.js
└── package.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.
Content is placed in the src/content/
directory into the appropriate subfolder.
🧞 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:4321 |
npm run build |
Build your production site to ./dist/ |
npm run preview |
Preview your build locally, before deploying |
npm run astro ... |
Run CLI commands like astro add , astro check |
npm run astro -- --help |
Get help using the Astro CLI |
node ./dist/server/entry.mjs |
Runs app after building |