Skip to main content

yet another static site generator

Project description

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?

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Dwarf-0.1.3.tar.gz (7.3 kB view details)

Uploaded Source

File details

Details for the file Dwarf-0.1.3.tar.gz.

File metadata

  • Download URL: Dwarf-0.1.3.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Dwarf-0.1.3.tar.gz
Algorithm Hash digest
SHA256 3827b77c2a0c798cc1ab8e33be0b08ee4448ad1f3d3c72e7a5ef924fb93f691d
MD5 14736cbd9382303b1725840186e62f8f
BLAKE2b-256 73b7119e1943f0dd9f8d7d2527dd39a0836f61f693fd7bc31eed8e17eaf80d4e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page