A static website for learning Ruby programming, built with Typophic.
- rubylearning theme: Default theme optimized for tutorial content
- hugo-serif-typophic theme: Sans-serif theme for blog posts
- bonsaiblog theme: Alternative theme for blog sections
The site uses a multi-theme configuration:
theme:
default: rubylearning
sections:
posts: hugo-serif-typophicThis means:
- Main site (tutorials, about, resources) uses rubylearning theme
- Blog posts use hugo-serif-typophic theme (sans-serif design)
- Sans-serif typography for better readability
- Clean, minimalist design
- Proper date display
- Tag support
- Responsive layout
- Mobile-friendly navigation
- Comprehensive Ruby tutorials
- Step-by-step learning path
- Code examples with syntax highlighting
- Interactive elements
Location: themes/hugo-serif-typophic/
Key files:
layouts/post.html- Blog post layoutlayouts/default.html- Default page layoutincludes/_header.html- Site headerincludes/_main-menu.html- Navigation menucss/style.css- Theme stylingjs/scripts.js- JavaScript enhancements
Location: themes/rubylearning/
Optimized for tutorial content with:
- Educational-focused layout
- Code snippet styling
- Interactive elements
- Comprehensive navigation
- Implemented section-specific theme assignment
- Blog posts now use sans-serif theme for better readability
- Main content uses tutorial-optimized theme
- Simplified HTML structure
- Eliminated header duplication issues
- Consistent navigation across all pages
- Proper metadata handling
- Mobile-friendly navigation
- Flexible grid system
- Adaptive typography
- Touch-friendly elements
# Install dependencies
bundle install
# Build the site
bundle exec typophic build
# Serve locally
bundle exec typophic serveTypophic ships a single CLI with Rails-like generators and sensible defaults. Quick reference:
# Generators
typophic new site mysite --theme rubylearning
typophic new blog myblog --theme https://github.com/user/cool-theme
typophic new post "Hello World" --tags intro --draft
typophic new page "About" --permalink /about/
# Blog workflow
typophic blog new --title "Understanding Enumerable" --tags ruby
typophic blog publish --slug understanding-enumerable
typophic blog list --drafts
typophic blog delete --slug understanding-enumerable --date 2025-01-01
# Theme management
typophic theme new mytheme
typophic theme install user/cool-theme # or full GitHub URL
typophic theme list
typophic theme use mytheme --default
# Build/serve/deploy
typophic build --deploy
typophic serve --build --port 3000
typophic deploy --remote origin --branch gh-pages
typophic deploy --provider s3 --bucket my-bucket
# Utilities
typophic clean
typophic doctorFor the full command reference, see docs/CLI.md.
/content/pages/- Main pages and tutorials/content/posts/- Blog posts/data/- Site data files/themes/- Theme files
- Syntax highlighting for Ruby code
- Tutorial progression tracking
- Related content suggestions
- Tag-based content organization