Static site generator i actually can use.
Project description
lightweight
Static site generator i actually can use.
Features
- Clean and easily extensible API
- Jinja2 templates
- Markdown rendering
- Markdown links
- Sass/SCSS rendering
- RSS/Atom feeds
- Dev server
Installation
Available from PyPI:
pip install lightweight
Quick Example
from lightweight import Site, markdown, paths, render, template, feeds, sass
def blog_posts():
post_template = template('blog-post.html')
# Use globs to select files.
return (markdown(path, post_template) for path in paths('blog/**.md'))
site = Site(url='https://example.com')
# Render a Jinja2 template.
site.include('index.html', render('index.html'))
# Render list of Markdown files.
[site.include(f'posts/{post.file.stem}.html', post) for post in blog_posts()]
# Syndicate RSS and Atom feeds.
[site.include(f'posts.{type}.xml', feed) for type, feed in feeds(site['posts'])]
# Render SCSS.
site.include('static/css/style.css', sass('static/scss/lightweight.scss'))
# Include a copy of a directory.
site.include('static/img')
# Execute all included content.
site.render()
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
lightweight-0.1.0.dev17.tar.gz
(10.1 kB
view hashes)
Built Distribution
Close
Hashes for lightweight-0.1.0.dev17-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c6d2debdf735aa5798b9e9ac1e0fcf29cb268a5e9af1cf8d4a5babbc3e422ce8 |
|
MD5 | dadb02d4d6fd0b527c87d85e1835123c |
|
BLAKE2b-256 | b8c8ab69d997c71d3fbe8af2abe6786211e680177f2b207fb04769107fca9e78 |