Jekyll documentation and showcase site for the Scribbletune ecosystem. Hosted on GitHub Pages at scribbletune.com.
gem install jekyll bundler
bundle install
bundle exec jekyll serveVisit http://localhost:4000. Jekyll watches for changes and rebuilds automatically.
bundle exec jekyll buildOutput goes to _site/.
No test suite. This is a static documentation site.
- Jekyll 3.9 (see Gemfile) — do not upgrade to 4.x without testing
- Minima 2.x theme with heavy customization in
_layouts/,_includes/, and_sass/ - kramdown + GFM for Markdown parsing
- No Node/npm pipeline — CSS compiled by Jekyll's built-in Sass, no webpack/bundler
| Path | Purpose |
|---|---|
_pages/ |
All site pages (documentation, examples, about, etc.) |
_layouts/ |
Base layouts: default, documentation, examples, page, post |
_includes/ |
Partials: head, top-nav, aside, footer, etc. |
_sass/ |
SCSS source (_base.scss, _home.scss) |
css/main.scss |
Entrypoint — Jekyll compiles this using _sass/ |
css/ |
Also contains vendored CSS: bootstrap.min.css, pretty.css, icons.css |
js/ |
Custom scripts for interactive demos (beat.js, random-chords.js, prettify.js) |
_data/latest.yml |
Latest Scribbletune npm version — update when a new library release ships |
sounds/piano/ |
WAV piano samples for browser playback demos |
fonts/ |
Custom icon font "fico" (do not regenerate unless icon set changes) |
- Create/edit Markdown files in
_pages/. - Every page needs YAML front matter with at minimum
layout,title, andpermalink:--- layout: page title: My Page permalink: /my-page/ ---
- Use
layout: documentationfor API/library docs pages (adds sidebar nav). - Use
layout: examplesfor interactive demo pages. _pages/documentation.mdis the docs landing page; update it when adding new doc pages.
- Jekyll 3 uses Sass 3.x internally — avoid CSS features that require Sass 4/Dart Sass.
- No server-side code; everything must work as static files.
- Audio demos depend on
sounds/piano/WAV files being served correctly — do not move them. - GitHub Pages serves from the
masterbranch root;_site/is not committed. CNAMEmust stay as-is (scribbletune.com) — deleting it breaks the custom domain.