A static content generator for interactive and parametrisable p5.js canvases.
Project description
Ginpar
Awkwardly named after Generative Interactive Parametrisable Canvases.
Generate a static site that indexes a list of P5.js sketches and turns each of those into an interactive sketch.
- Sketches are inside a folder
sketches/
- Will use the filename as the sketch name.
- Index of the site will contain a list of
a
tags for eachsketch
. - Will read each sketch and create a page for each one:
- A form will be created using a
params
object that specifies the type, range, step, and default values of the variables. - A fixed section will contain the canvas and will allow for easy saving, auto-naming using the seed, and scaling.
- A form will be created using a
Current version may work for other libraries, but it's only meant for P5.js.
Following versions my guarantee support for different libraries.
How to use
- Install Ginpar.
pip install ginpar
- Initialize a new project
ginpar-init
- Modify
config.py
to reflect the metadata of the website. - Add your sketches to
sketches/
. Feel free to removeexample.js
. - For each script, you must define the
ginpar.params
object (preferably at the beginning). Read theginpar.params
API/* ## */ const ginpar.params = { height: { value: 500, type: "number", range: [0, 4096] }, my-variable: { value: .8, type: "slide", range: [0, 1], step: .05 // ... }, // ... }; /* ## */
Note that the/* ## */
are the important thing to add! - Build your static site
ginpar
. - Enjoy your site created at
public/
.
Dependencies
This project only uses Jinja2 as template engine, however, some code snippets were heavily inspired by Pelican source code.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ginpar-0.1.2.tar.gz
(4.7 kB
view hashes)
Built Distributions
ginpar-0.1.2-py3.7.egg
(14.9 kB
view hashes)
ginpar-0.1.2-py3-none-any.whl
(9.7 kB
view hashes)