Skip to main content

Dwarf is an out-in-the-open exercise in building a content publishing tool with Python and Flask .

Dwarf currently wants to be a static site generator much like its heroes Jekyll and Pelican .

It has been mentioned that this is entirely possible in 50 lines of code with Flask-FlatPages and FrozenFlask . There is truth to this. But no fun.

But Darf is still a pipsqueek!

Quite right, Dwarf is in its very early stages. It’s in no way stable, scalable, secure, or a good idea in any.

Installation:

Core requirements: python 2.7 + pip

OPTION 1: use pip

$ pip install Dwarf

OPTION 2: the long and laborious hard way:

  • git clone git@github.com:jpoesen/dwarf.git

  • create a virtual environment with virtualenv

    $ cd /path/to/my/dwarf

    $ virtualenv venv_dwarf

  • activate the virtual env

    $ source venv_dwarf/bin/activate

  • set up Dwarf’s dependancies within your virtual environment

    $ cd /path/to/my/dwarf/location

    $ pip install -r requirements.txt

  • run dwarf

    $ python dwarf/application.py

Where does Dwarf keep its stuff?

No SQL. No NOSQL. All source content is stored in flat markdown files:

/content/

/content/authors/

/content/authors/alice.md

/content/authors/_bob.md

/blog/example.md

/pages/about.md

(Files starting with an underscore are assumed to be draft content and won’t be rendered publicly.)

Your Dwarf is so pretty.

Oh you. Out of the box Dwarf uses Twitter’s Bootstrap to make itself purdy for gentleman callers. Any lipstick will do though. Go nuts.

What about pictures and discussions and such?

Dwarf has lots of specialized friends, like Gravatar for author avatars and Disqus to power comments, all ready to go.

Multimedia content will have to be hosted elsewhere for now - Dwarf has no intention of handling all that himself, though some kind of ajaxy wizardy interface to those third party thingies may be cooked up later.

What holds the future?

Right now we are assuming a lot of things and hiding behind ‘convention over configuration’ to justify lots of magicking about. We need to move stuff into a simple config file, write unit tests and produce documentation. Stabilize now, add features later.

Licence?

Good question. How about the BSD License , the same one Flask uses?

Metadata

Release files for Dwarf 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for Dwarf 0.1.3
File Size Uploaded
Dwarf-0.1.3.tar.gz 7.3 kB Details

Release files / Dwarf-0.1.3.tar.gz

Download URL Dwarf-0.1.3.tar.gz
Size 7.3 kB
Tags Source
SHA-256 checksum
How to use checksums
3827b77c2a0c798cc1ab8e33be0b08ee4448ad1f3d3c72e7a5ef924fb93f691d
BLAKE2b-256 checksum
How to use checksums
73b7119e1943f0dd9f8d7d2527dd39a0836f61f693fd7bc31eed8e17eaf80d4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.3 This release

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page