Welcome to Columbia Virtual Campus.
CVC is a static website (with certain dynamic components) build using React.js, Javascript and Firebase. It is developed using Gatsby, a static website generator, and utilizes components from Material UI and Material Kit React (By Creative Tim).
- Node (Npm comes installed with it)
- Gatsby CLI. Install it with
npm i gatsby-cli
- Fork the github repo and clone it locally.
- NPM install the packages. (command:
npm install
) - Run Command:
gatsby develop
. - Go to http://localhost:8000/ to see the output. The website should be up!
- Any changes made to the code get reflected automatically on the website. If not, the refresh
- Before submitting code, please run:
gatsby build && gatsby serve
. See the output on http://localhost:9000/ and verify that it is exactly what you want. - Make a pull request and inform your Project lead about it. Ask for review on github.
- Create a
.env
file in thefunctions/
directory. - Edit
.env
to contain:
EMAIL=columbiavirtualcampus@gmail.com
PASSWORD=<Ask on Slack for this information>
- Run
$ npm install -g firebase-tools
. - While in the
functions/
directory, run$ firebase login
or$ firebase login --no-localhost
if you are using the Docker container. - Sign in with your email that is associated with the CVC firebase project on the browser to verify your firebase login. (Ask on Slack if you don't have access to the firebase project).
- To deploy functions, run
$ firebase deploy --only functions
or for specific functions run$ firebase deploy --only functions:<funcname1>,<funcname2>,...
Note: You might not have permission to make new functions that rely on HTTP. Use the CVC email to login and deploy in this case.