/civictech.ca

open source website of Civic Tech Toronto.

Primary LanguageHTMLOtherNOASSERTION

CivicTech Toronto

The website repository for CivicTech.ca — a community of Torontonians working on civic challenges through technology, design, and collaboration.

Get Involved

Visit civictech.ca to learn more about our community, attend events, and get connected.

See CONTRIBUTING.md for how to contribute to this website.

Local Development

Prerequisites

This site is built with Jekyll, which requires Ruby. Follow these steps to get set up:

1. Install Ruby

This project requires Ruby 3.2.2 (specified in .ruby-version).

We strongly recommend using a Ruby version manager like RVM or RBENV to avoid conflicts.

Verify your Ruby version:

ruby -v
# Should show: ruby 3.2.2

2. Install Bundler

Bundler manages Ruby gem dependencies:

gem install bundler

3. Additional Resources

Setup

  1. Clone the Repository

    git clone https://github.com/CivicTechTO/civictech.ca.git
    cd civictech.ca
  2. Install Dependencies

    bundle install

    If you see errors about missing Ruby version, make sure you've completed the Prerequisites section above.

  3. Run the Local Server

    Standard mode:

    bundle exec jekyll serve

    Or use incremental regeneration (faster but less stable):

    bundle exec jekyll serve --incremental
  4. View the Site

    Open your browser to localhost:4000

Common Issues

Ruby Version Management If you encounter Ruby version conflicts, use a Ruby version manager like RVM or rbenv. Check .ruby-version for the required version.

Bundle Install Errors Ensure your Ruby environment matches the Gemfile requirements. Older gem versions may not be compatible with newer Ruby versions.

Jekyll-GitHub Pages Compatibility GitHub Pages restricts Jekyll plugins for security. See supported versions for details.

Development Scripts

Update Submodule

git submodule update --remote --merge

Generate Categories and Tags Data

./_scripts/generate_category_data.sh
./_scripts/generate_tag_data.sh

Generate Category and Tag Pages

./_scripts/generate_category_pages.sh
./_scripts/generate_tag_pages.sh

Project Structure

This site uses Jekyll with content managed in the archives/ submodule. The archives contain historical data about events, people, projects, and organizations. See archives/README.md for more details.

License

This project uses a dual-license structure:

  • Code (Jekyll templates, scripts, stylesheets, etc.): MIT License
  • Content (website pages, documentation, archive content): CC BY-NC-SA 4.0

See LICENSE for full details.