Official website of ICS Security Switzerland — built with Jekyll and hosted on GitHub Pages - www.icssec.ch
This project supports both:
- 🧩 Local development on macOS / Linux / Windows
- 💻 GitHub Codespaces (preconfigured container environment)
-
Open the repository in GitHub Codespaces
→ GitHub will automatically create a preconfigured environment with Ruby and Bundler installed. -
Wait for initialization to complete
(thepostCreateCommandrunsbundle installautomatically) -
Start the local preview server:
npm run dev
or directly:
bundle exec jekyll serve --host 0.0.0.0 --livereload --port 4000 -
Open the forwarded port (4000) in your browser preview:
http://localhost:4000
If you prefer to run the site locally without Codespaces:
You’ll need:
- Ruby ≥ 3.0
- Bundler ≥ 2.4
Example (macOS):
brew install ruby
gem install bundlerbundle installbundle exec jekyll serve --host 0.0.0.0 --livereload --port 4000Your site is now available at:
http://localhost:4000
.
├── _config.yml # Site configuration (title, description, etc.)
├── _layouts/ # Page templates
├── _includes/ # Header, footer, and reusable elements
├── _posts/ # Blog posts (optional)
├── assets/ # Images, CSS, JS
├── pages/ # Content pages (About, Members, Events, etc.)
├── Gemfile # Ruby gem dependencies (GitHub Pages setup)
├── package.json # NPM scripts for convenience
└── .devcontainer/ # GitHub Codespaces configuration
The site is automatically built and deployed via GitHub Actions:
- Triggered on every push to the
mainbranch - Uses the official jekyll-build-pages GitHub Action
- Deployment result:
https://www.icssec.ch
To check build status:
- Go to your repository → Actions tab
- Select workflow:
pages-build-deploy-jekyll - Verify that all steps are ✅ successful
| Action | Command |
|---|---|
| Install dependencies | bundle install |
| Serve locally | npm run dev |
Rebuild after _config.yml changes |
Stop + restart server |
| Update RubyGems (optional) | gem update --system |
| Check Jekyll version | bundle exec jekyll -v |
- No need to install
jekyllmanually.
It’s already included viagithub-pagesGem (ensures version parity with GitHub Pages). .gitignoreexcludes_site/andvendor/folders to keep the repo clean.- Codespaces automatically exposes port
4000for preview.
Contributions and pull requests are welcome!