astro/examples/hackernews/README.md

2.8 KiB

Astro Starter Kit: Hackernews

npm create astro@latest -- --template hackernews

Open in StackBlitz Open with CodeSandbox Open in GitHub Codespaces

🧑‍🚀 Seasoned astronaut? Delete this file. Have fun!

🚀 Project Structure

Inside of your Astro project, you'll see the following folders and files:

/
├── public/
│   └── favicon.svg
├── src/
│   ├── components/
│   ├── layouts/
│   │   └── Layout.astro
│   └── pages/
        └── stories/
            └── [id].astro
        └── users/
            └── [id].astro
│       └── [...stories].astro
└── 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. Because the list of stories and users is always changing, dynamic routes like [id].astro are used to build pages when a specific page is requested.

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.

Server-side rendering (SSR)

This project uses the @astrojs/node adapter to deploy the SSR site to Node targets. Check out Astro's deployment docs for details on other adapters and hosting environments.

🧞 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

👀 Want to learn more?

Feel free to check our documentation or jump into our Discord server.