Website hosted at https://lazulight.com/
Setup
- Ask the project leadership add you as a collaborator to this repository
- Install Git with Git LFS (e.g. GitHub Desktop)
- Install nvm, then use nvm to install npm
- Clone this repository onto your machine
- In the clone, run
npm installto install the dependencies
Use
- In the clone, run
npm run dev, then enter the localhost url into your browser to view the site
Contributing
- Make a new branch to work on. Do not work on
main - Edit the website as required
- run
npm run lintand fix any issues that it detects - Push your changes and create a pull request from your branch to
main
npm installinstalls/updates the dependencies on your computernpm run devstarts a local dev server with hot reloads so you can see your changes as soon as you save.npm run buildbuilds the project for deployment. Built files are created in thedistfolder.npm run previewspins up a full web server reading from thatdistfolder you just built. Good for checking that build-time things (compression, imagetools resize/conversion, etc.) are working properly.npm run testruns the linters but doesn't make any changes. Used in the GitHub Action.npm run lintruns the linters and tries to fix things.
- Vite throws
Input file contains unsupported image formatand all the images are 1KB- We store our media in Git LFS. If you don't have it, grab it from here or from your favourite package manager. See here for more detailed install instructions. After that, run
git lfs installto activate it. If you've already cloned the repo before you installed Git LFS, you'll need to manually pull the media from LFS withgit lfs pull. After that, everything should Just Work™.
- We store our media in Git LFS. If you don't have it, grab it from here or from your favourite package manager. See here for more detailed install instructions. After that, run
Key dependencies of this project:
- wouter to link to other pages within the website
- imagetools
- react-countdown to release content at a specific time
- react-slick for the slide shows
- react-medium-image-zoom for images to fullscreen-zoom when clicked