CruzHacks 2024 website built with React, Typescript, Tailwind, and hosted with firebase. Website depends on firestore rules, indexes, and functions defined in CruzHacks 2024 backend.
- Clone this repository
- Install nvm to use a specific version of
node; in this case, v18.18.2
2a. run
command -v nvmto check if nvm is installed correctly, should outputnvm - Use
nvm install 18andnvm use 18to use version 18 of node, you may have to redo this step each time you open terminal - Navigate to the root of the repository and run
yarnto install all the dependencies - Find/create .env file according to .env.sample (optional: create/find .env.production for production environment)
- Run
yarn startto start the frontend
- Install Firebase CLI to emulate
hosting or deploy to staging. We recommend installing through npm via
npm install -g firebase-tools - Login using
firebase login - Test the CLI is working properly and you have access to CruzHacks firebase
projects using
firebase projects:list(you may not have access to production for security reasons, however you need access to development to emulate:hosting locally) - Deploy to development or production using
yarn deploy:devoryarn deploy:prod
yarn start- starts a development serveryarn lint- runs the linter for all typescript filesyarn format- runs the prettier formatter for all typescript filesyarn build- creates a development buildyarn build:prod- creates a production buildyarn preview- preview the buildyarn emulate:hostingcreate a build and emulate firebase hostingyarn deploy:dev- deploy to firebase development project- as defined by
defaultproject anddevelopmenttarget in /.firebaserc
- as defined by
yarn deploy:prod- deploy to firebase production project- as defined by
productionproject and target in /.firebaserc
- as defined by
Site Map, Feature List, UI Mockups, Style Guide, etc.
Reach out to 2024 CruzHacks Engineering Director Zack Traczyk regarding any questions about the codebase.