Skip to main content

Yet another static blog generator.

Project description

pidgeotto

Description

Yet another static website generator.

Why choose pidgeotto?

  1. Free of javascript.
  2. Extensible, flexible, forkable.
  3. Minimal and fast.
  4. Free under MIT License.

Installation

pip install pidgeotto

$ pip install git+https://github.com/niharokz/pidgeotto

Prerequisites

By default, pidgeotto will install the below packages from PyPI pip pyyaml, jinja2, markdown2

  • PyYAML: To consume the config file and header of blog posts.
  • jinja2: Templating engine
  • markdown2: To convert markdown to HTML

Usage:

$ pidgey init project

To initiate pidgeotto with name "project"

$ pidgey new pageName

To create new page/post/note with name "pageName"

$ pidgey build pageName

To build static pages and keep those in the "public" directory.

Extra Functionalaties

  1. showInHome tag is present in each note markdown. showInHome: True will create page which are blog/note post.

     ``` showInHome: False ``` 
     will create page which are pages.
    
  2. config.yml is extensible. For example, if you want to add favicon.ico. Keep favicon in the resource folder. favicon: resource/favicon.ico in config.yml In template, add {{ config.get('favicon') }}.

  3. Extra metadata per page. If you want to add some metadata to your page, it can be done using the below command on the markdown page. meta : '<link rel="stylesheet" type="text/css" href="/extra.css" />

Structure

pidgeotto_project
├── public
├── config.yml
├── content
│   ├── header.md
│   ├── footer.md
│   ├── home.md
│   ├── archive.md
│   └── note
│       └── other_pages.md
├── resource
└── templates
    ├── home_template.html
    ├── note_template.html
    └── rss_template.xml
  • config.yml: To configure the title, name, CSS file, js file, and other configurations.
  • resource: Location to store all CSS, js, image data and other static content.
  • content: All markdown files are stored here.
  • template: Layouts for different HTML pages are kept here.
  • public: All generated static files. It can be changed in config.yml

Example

Below are examples of sites running via pidgeotto.

  1. nihar.page

TODO

  • (A) 08-05-2021 Clean up some clutter coding

Update

0.0.3

  • Server Functionality added
  • Automatic .md extension
  • Error/Exception handled

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

pidgeotto-0.0.4.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

pidgeotto-0.0.4-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file pidgeotto-0.0.4.tar.gz.

File metadata

  • Download URL: pidgeotto-0.0.4.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for pidgeotto-0.0.4.tar.gz
Algorithm Hash digest
SHA256 7e8a58fc1a56b3100ff83ef637e9dd0336314b80f289f2262015c9157b01c6d7
MD5 542b3b466da772f8f6f5c77a3d812468
BLAKE2b-256 2a9ce6b9f8112d1741242d84772e581e70de18123260f03ca22a22e986306048

See more details on using hashes here.

File details

Details for the file pidgeotto-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: pidgeotto-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 9.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for pidgeotto-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 77eeafcdbb3d9a42fc1dd765aec87b681c0c9805f7a99a8ff28a372068e58797
MD5 7d21b5b3a66a9b11c6f4b7a0b7fb9b41
BLAKE2b-256 4d057ee2e225f561852162c2b34be46ddf367a09111f4271a43fb281d98d9516

See more details on using hashes here.

Supported by

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