This is the source of the ZBT website hosted on MIT infrastructure at <zbt.mit.edu>.
The goal is to have a modern-looking, easy to deploy and develop, static website.
Since MIT's hosting infrastructure available to the undergraduates runs very outdated versions of Rails, Django and PHP, the best decision was to go with a static website with all interactivity implemented in the client-side code.
This is how it came down to using GatsbyJS, a tool that generated static pages with ReactJS powered transitions and client-side interactivity.
- Provide a welcoming information about ZBT Xi Chapter to the wider MIT community
- Have an up to date information about Rush and current brothers
- Make the website usable on mobile (read: responsive design)
You would need node
and npm
.
**Make sure Node version is v7! There are some compatibility issues at the moment. For example, you can run:
npm install -g n
$ n 7.0.0
Install gatsby
globally:
npm install -g gatsby
Install dependencies:
npm install
Run locally:
npm run develop
Running in development mode will run a server on localhost:8000
. CSS has hot-code-reloading. Hot module replacement also should work.
To lint:
npm run lint
The site is deployed on MIT Scripts, under the locker called zbt
.
Since it is a fraternity-owned locker, your MIT Kerberos account should be on
the zbt-webmaster@mit.edu
mailing list in order to upload files there.
To deploy, just build files and put them into the Scripts root to be served as static files. **If you run into errors with os.tmpDir, go to https://stackoverflow.com/questions/40913034/os-tmpdir-is-deprecated-node-and-formidable
Run the ./deploy-to-prod
bash script to save keystrokes and upload files
over scp
.
Web design and development by Slava Kim'19. Photography by John Chow'15.