To set up the project for the first time, follow these steps:
-
Fork and clone the project
-
Run the setup command:
make setup-project
This will:
- Install the necessary dependencies
- Clean any existing generated files
- Sync data from Google Sheets
- Generate all member and group files
-
Start the development server:
make serve
Alternatively, you can use make setup to just install dependencies and start the Jekyll server without syncing data.
If you need to update the project, you can follow these instructions:
-
Pull the latest changes:
git pull origin main
-
Update your local dependencies:
make install
-
Start the server:
make serve
Run make help to view setup commands
To build the site for deployment with optimizations, you can run:
make buildThis will:
- Build the site with Jekyll in production mode
- Run PurgeCSS to remove unused CSS
- Apply minification to HTML, CSS, and JavaScript files
The site uses the jekyll-minifier plugin to minify HTML, CSS, and JavaScript files. The minification settings are configured in _config.yml and _config.local.yml.
To test if the minification is working correctly, you can run:
make test-minificationThis will:
- Build the site if it hasn't been built yet
- Check all HTML, CSS, and JavaScript files in the
publicdirectory - Report their sizes and minification status
The test will help you identify any files that aren't being properly minified and provide suggestions for further optimization.
The site uses data from Google Sheets for members, groups, projects, and project contributors. To update this data:
- Make sure your
.envfile is set up with the correct credentials and spreadsheet ID. - Run
make syncto fetch the latest data from Google Sheets. - Run
make serveto start the Jekyll server and view the updated site.
For more detailed information about the data synchronization and file generation process, see the _build/README.md file.