Clone the repo and install dependencies with pnpm:
pnpm install
Create a .env
file in the root folder.
Create a new Firebase project. Get the Firebase's configuration object and use it to set the FIREBASE_CONFIG
variable in the .env
file:
FIREBASE_CONFIG=THE_CONFIGURATION_OBJECT
Be careful to put the whole object in a single row, eliminating every new line character.
Create a private key for the Firebase's service account and use it to set the FIREBASE_SERVICE_ACCOUNT
variable in the .env
file:
FIREBASE_SERVICE_ACCOUNT=THE_SERVICE_ACCOUNT_PRIVATE_KEY
Again, be careful to put the whole object in a single row, eliminating every new line character.
Start the local development server:
pnpm dev
Open localhost:3000 in your browser to see the site!
That's it! You're ready to start contributing to the project! 🥳
Inside of your Astro project, you'll see the following folders and files:
/
├── public/
│ └── favicon.svg
├── src/
│ ├── feature-x/
│ │ └── ComponentName.astro
│ │ └── AnotherComponentName.astro
│ ├── shared/
│ │ └── Card.astro
│ └── pages/
│ └── index.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.
There's nothing special about src/feature-x/
, (replace "x" with any component name that you want) but that's where we like to put any Astro/React/Vue/Svelte/Preact components or something related to the feature.
Any static assets, like images, can be placed in the public/
directory.
We make use of Firebase Functions in the project. To understand how they are used and how to contribute to Functions development or just how to develop your own Function, please, refer to the Technical Documentation on Firebase Functions.
All commands are run from the root of the project, from a terminal:
Command | Action |
---|---|
pnpm install |
Installs dependencies |
pnpm dev |
Starts local dev server at localhost:3000 |
pnpm build |
Build your production site to ./dist/ |
pnpm preview |
Preview your build locally, before deploying |
pnpm astro ... |
Run CLI commands like astro add , astro check |
pnpm astro --help |
Get help using the Astro CLI |
You can find the User Personas in the Wiki page and on Figma
TBD
New contributors welcome! Check out our Contributors Guide for help getting started.
Join us on Telegram to meet other maintainers. We'll help you get your first contribution in no time!
The project is published under the MIT license. Feel free to clone and modify repo as you want, but don't forget to add a reference to authors :)