https://github.com/eqs/yacho
The static site generator for creative coders.
https://github.com/eqs/yacho
creative-coding generative-art p5-js p5-sketches p5js processing python static-site-generator
Last synced: 3 months ago
JSON representation
The static site generator for creative coders.
- Host: GitHub
- URL: https://github.com/eqs/yacho
- Owner: eqs
- License: mit
- Created: 2021-04-19T11:47:07.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2022-02-19T17:31:56.000Z (over 4 years ago)
- Last Synced: 2025-09-16T20:40:11.328Z (9 months ago)
- Topics: creative-coding, generative-art, p5-js, p5-sketches, p5js, processing, python, static-site-generator
- Language: Python
- Homepage:
- Size: 157 KB
- Stars: 9
- Watchers: 1
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# yacho
[](https://pypi.python.org/pypi/yacho)
[](https://travis-ci.com/eqs/yacho)
The static site generator for creative coders.
## Demo page
* Demo page: https://yacho-demo.netlify.app/
* Repository: https://github.com/eqs/yacho-example
## Requirements
* Python 3.7+
## Installation
```
pip install yacho
```
## Usage
### Directory Structure
```
.
│ avatar.png
│ custom.css
│ yacho.sketchbook.toml <----------- Put PROJECT config file
│
├─sketch_210401a
│ │ sketch_210401a.pde
│ │ yacho.sketch.toml <----------- Put sketch config file
│ │
│ ├─cover
│ │ cover_image.png
│ │
│ └─images
│ img1.png
│ img2.png
│ img3.png
│ ...
│
└─sketch_210402a
│ sketch_210402a.pde
│ yacho.sketch.toml <----------- Put sketch config file
│
├─cover
│ cover_image.png
│
└─images
img1.png
img2.png
img3.png
...
```
### Build site
```
# v0.0.2+
yacho build
# v0.0.1
# yacho yacho.sketchbook.toml
```
Push `dist` to your gh-pages.
### Sketch generator
Processing sketch
```
yacho create
```
p5.js sketch
```
yacho create -t p5js
```
### Example `yacho.sketchbook.toml`
```toml
sketchbook_root = '.'
base_url = 'https://yacho-demo.netlify.app/'
# Page title
title = 'My Sketchbook'
# Profile information
author = 'eqs'
avatar = 'chi.png' # relative path from sketchbook_root
bio = """
Creative Coder
"""
# Your custom css (relative path from sketchbook_root)
custom_css = 'custom.css'
[social]
home = "https://www.eqseqs.work"
twitter = "eqs_work"
github = "eqs"
instagram = ""
youtube = ""
facebook = ""
```
### Example `yacho.sketch.toml`
```toml
# If title is empty, sketch dir name will be used as title.
title = "Flowers"
# Default to false
draft = false
comment = "An example comment."
# Files listed in this value will be public.
# Default to:
public = ['*.pde', 'sketch.js', '*.py']
# video embedding will be available v0.0.2
[video]
# Please set 'none', 'youtube', 'vimeo', 'neort' or 'gif'
type = 'none'
# If you use 'gif', id will be interpreted as file path of gif animation.
id = ''
```