Heya there, this is ACM Teach LA's website! It's goal is to give Teach LA a more formal online presence, and to create a one-stop shop for prospective tutors and schools to get more information about us!
This website is built with Jekyll, with some component implementations taken from ACM's main website (conforming to ACM Design's Style Guide). We build and test this website with GitHub Actions, and deploy it on Netlify. We will be running on ruby 3.2.5 and jekyll 4.3.3. You will find detailed installation and setup instructions below for both macOS and Windows.
To get a copy of this website running locally on your machine, you'll need Ruby, a copy of this repo, and access to your system's shell/terminal.
We recommend using rbenv
to manage Ruby versions.
# Install Homebrew if not already installed
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install rbenv and ruby-build
brew install rbenv ruby-build
# Set up rbenv in your shell
rbenv init
echo 'eval "$(rbenv init -)"' >> ~/.zshrc
source ~/.zshrc
# Install Ruby 3.2.5 and set it globally
rbenv install 3.2.5
rbenv global 3.2.5
# Check that Ruby and gem are set up correctly
ruby -v # should show 3.2.5
gem install bundler
Then, let's clone our project with git, and install our dependencies!
git clone https://github.com/uclaacm/teach-la-website.git
cd teach-la-website
bundle install
This should install all of our RubyGems dependencies! Note that we've committed a Gemfile.lock
, so you should get a working set of gems.
Run:
bundle exec jekyll serve
Configuration file: /Users/matt/code/tla/static/_config.yml
Source: /Users/matt/code/tla/static
Destination: /Users/matt/code/tla/static/_site
Incremental build: disabled. Enable with --incremental
Generating...
done in 0.17 seconds.
Auto-regeneration: enabled for '/Users/matt/code/tla/static'
Server address: http://127.0.0.1:4000/
Server running... press ctrl-c to stop.
Your site will be served locally at: http://localhost:4000. You may also visit the server address line in your browser, which is usually http://127.0.0.1:4000/.
If you run into any issues, you may also try:
bundle exec jekyll clean
bundle update
bundle exec jekyll serve
If you're on Windows, follow these instructions instead of the macOS setup above:
ridk install
, and enable MSYS2 base + development toolchain.Open Command Prompt or PowerShell, then run:
gem install bundler
git clone https://github.com/uclaacm/teach-la-website.git
cd teach-la-website
bundle install
bundle exec jekyll serve
Configuration file: /Users/matt/code/tla/static/_config.yml
Source: /Users/matt/code/tla/static
Destination: /Users/matt/code/tla/static/_site
Incremental build: disabled. Enable with --incremental
Generating...
done in 0.17 seconds.
Auto-regeneration: enabled for '/Users/matt/code/tla/static'
Server address: http://127.0.0.1:4000/
Server running... press ctrl-c to stop.
Your site will be served locally at: http://localhost:4000. You may also visit the server address line in your browser, which is usually http://127.0.0.1:4000/.
chcp 65001
to set terminal to UTF-8 encoding if you run into encoding issues.Want to make a change to the website? Great! Here are the steps:
master
is a protected branch, so you cannot push to it.git checkout
.bundle exec jekyll build
. If there are any errors, our CI/CD service will reject your build.master
. Congratulations! If you'd like, it's now safe to delete your branch/fork.Make sure you're using Ruby 3.2.5. Run:
ruby -v
If not, follow the Ruby installation instructions above.
If bundle install
fails, try updating your gems:
gem update --system
gem update bundler
If jekyll serve
crashes, clean and retry:
bundle exec jekyll clean
bundle exec jekyll serve
If you get file write errors like Errno::EINTR
, try moving the repo to a non-synced folder (e.g. not inside iCloud Drive or Desktop).
If you run into any issues, please let us know on our issues tracker!