Personal portfolio website built with Astro, Svelte, and More.
View Site
✦ .
Report Bug
✦ .
Request Feature
✦ .
Documentation
.
├── .vscode
├── node_modules
├── public/
│ ├── fonts
│ ├── images
│ └── svg
├── src/
│ ├── components/
│ │ └── ...
│ ├── layouts/
│ │ └── ...
│ ├── pages/
│ │ └── ...
│ ├── styles/
│ │ ├── global.css
│ │ ├── palette.png
│ │ └── style-rules.md
│ └── env.d.ts
├── .gitignore
├── astro.config.mjs
├── package.json
├── pnpm-lock.yaml
├── README.md
├── svelte.config.js
└── tsconfig.json
A little reference for how everything will be organize in a typical Astro project. You can of course have a different setup, but this is a good starting point:
src/*
: All the source code lives here (components, pages, styles, etc.).public/*
: Static non-code, unprocessed asses like images, fonts, etc.package.json
: Project manifest, very standard.astro.config.mjs
: Astro configuration file, use to configure Astro.tsconfig.json
: TypeScript configuration file, use to configure TypeScript.Astro looks for .astro
or .md
files in the src/pages/
directory. Each page is exposed as a route based on its file name. Which is very neat, honestly, makes it very easy to reason about your routes.
There's nothing special about src/components/
, it's just a place to put your components, Im going to be organizing them by feature and then by relational components.
Any static assets, like images, fonts, yada yada be placed in the public/*
directory.
If you want to run the application locally, you can use the following set of commands for reference:
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 |
npm run astro ... |
Run CLI commands like astro add , astro check |
npm run astro -- --help |
Get help using the Astro CLI |
npm build |
Build your production site to ./dist/ |
After you are done with copying the github repository, you can start by installing the dependencies using the following command:
npm install
or
npm i
After the dependencies are successfully installed, you can start the development server using the following command:
npm run dev
or
npm start
And you should be good to go from there, you can start using this site as a reference for your own portfolio site or take some of the components in this site and use them for other projects you might have in mind.
This site is a personal project, so it would not be considered for contributions as the nature of the project is to be a personal portfolio site. However, if you have any suggestions or ideas for the site, feel free to open an issue and I will be happy to take a look at it.
Checkout the Contributing Guidelines for more information.
This project is licensed under the MIT License - see the LICENSE file for details.
404.astro
pageLayout.astro
astro add
astro add
(Optional)astro add
(Optional)