# 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:
```console
$ pidgey init project
```
To initiate pidgeotto with name "project"
```console
$ pidgey new pageName
```
To create new page/post/note with name "pageName"
```console
$ 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. [nih.ar](https://nih.ar)
## TODO
* (A) 08-05-2021 Clean up some clutter coding
## Update
### 0.0.3
* Server Functionality added
* Automatic .md extension
* Error/Exception handled
### 0.0.4
* Cleanup
### 0.0.5
* Windows support added
Raw data
{
"_id": null,
"home_page": "https://github.com/niharokz/pidgeotto",
"name": "pidgeotto",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "python,jinja2,pyyam,markdown2,static,site",
"author": "nihar",
"author_email": "<mail@nihars.com>",
"download_url": "https://files.pythonhosted.org/packages/3f/91/92bf7726cb62ffa76a56d3e29a688ad8c560f05e7fe2719363ce5521806a/pidgeotto-0.0.5.tar.gz",
"platform": null,
"description": "# pidgeotto\r\n\r\n## Description\r\nYet another static website generator. \r\n\r\nWhy choose pidgeotto?\r\n1. Free of javascript.\r\n2. Extensible, flexible, forkable.\r\n3. Minimal and fast.\r\n4. Free under MIT License.\r\n\r\n## Installation\r\n``` pip install pidgeotto ```\r\n\r\n$ pip install git+https://github.com/niharokz/pidgeotto\r\n\r\n## Prerequisites\r\nBy default, pidgeotto will install the below packages from PyPI pip\r\n``` pyyaml, jinja2, markdown2 ```\r\n* PyYAML:\tTo consume the config file and header of blog posts.\r\n* jinja2:\tTemplating engine\r\n* markdown2:\tTo convert markdown to HTML\r\n\r\n## Usage:\r\n```console\r\n$ pidgey init project\r\n```\r\nTo initiate pidgeotto with name \"project\"\r\n\r\n```console\r\n$ pidgey new pageName\r\n```\r\nTo create new page/post/note with name \"pageName\"\r\n\r\n```console\r\n$ pidgey build pageName\r\n```\r\nTo build static pages and keep those in the \"public\" directory.\r\n\r\n## Extra Functionalaties\r\n1. showInHome tag is present in each note markdown.\r\n ``` showInHome: True ``` \r\n will create page which are blog/note post.\r\n \r\n ``` showInHome: False ``` \r\n will create page which are pages.\r\n\r\n2. config.yml is extensible. \r\n For example, if you want to add favicon.ico. Keep favicon in the resource folder.\r\n ``` favicon: resource/favicon.ico ``` \r\n in config.yml\r\n In template, add {{ config.get('favicon') }}.\r\n\r\n3. Extra metadata per page.\r\n If you want to add some metadata to your page, it can be done using the below command on the markdown page.\r\n ``` meta : '<link rel=\"stylesheet\" type=\"text/css\" href=\"/extra.css\" /> ```\r\n\r\n\r\n## Structure\r\n\r\n pidgeotto_project\r\n \u00e2\u201d\u0153\u00e2\u201d\u20ac\u00e2\u201d\u20ac public\r\n \u00e2\u201d\u0153\u00e2\u201d\u20ac\u00e2\u201d\u20ac config.yml\r\n \u00e2\u201d\u0153\u00e2\u201d\u20ac\u00e2\u201d\u20ac content\r\n \u00e2\u201d\u201a \u00e2\u201d\u0153\u00e2\u201d\u20ac\u00e2\u201d\u20ac header.md\r\n \u00e2\u201d\u201a \u00e2\u201d\u0153\u00e2\u201d\u20ac\u00e2\u201d\u20ac footer.md\r\n \u00e2\u201d\u201a \u00e2\u201d\u0153\u00e2\u201d\u20ac\u00e2\u201d\u20ac home.md\r\n \u00e2\u201d\u201a \u00e2\u201d\u0153\u00e2\u201d\u20ac\u00e2\u201d\u20ac archive.md\r\n \u00e2\u201d\u201a \u00e2\u201d\u201d\u00e2\u201d\u20ac\u00e2\u201d\u20ac note\r\n \u00e2\u201d\u201a \u00e2\u201d\u201d\u00e2\u201d\u20ac\u00e2\u201d\u20ac other_pages.md\r\n \u00e2\u201d\u0153\u00e2\u201d\u20ac\u00e2\u201d\u20ac resource\r\n \u00e2\u201d\u201d\u00e2\u201d\u20ac\u00e2\u201d\u20ac templates\r\n \u00e2\u201d\u0153\u00e2\u201d\u20ac\u00e2\u201d\u20ac home_template.html\r\n \u00e2\u201d\u0153\u00e2\u201d\u20ac\u00e2\u201d\u20ac note_template.html\r\n \u00e2\u201d\u201d\u00e2\u201d\u20ac\u00e2\u201d\u20ac rss_template.xml\r\n\r\n* config.yml:\tTo configure the title, name, CSS file, js file, and other configurations.\r\n* resource:\tLocation to store all CSS, js, image data and other static content.\r\n* content:\tAll markdown files are stored here.\r\n* template:\tLayouts for different HTML pages are kept here.\r\n* public: All generated static files. It can be changed in config.yml\r\n\r\n## Example\r\n\r\nBelow are examples of sites running via pidgeotto.\r\n1. [nih.ar](https://nih.ar)\r\n\r\n\r\n## TODO\r\n\r\n* (A) 08-05-2021 Clean up some clutter coding\r\n\r\n## Update\r\n\r\n### 0.0.3\r\n\r\n* Server Functionality added\r\n* Automatic .md extension\r\n* Error/Exception handled\r\n\r\n### 0.0.4\r\n\r\n* Cleanup\r\n\r\n### 0.0.5\r\n\r\n* Windows support added\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Yet another static blog generator.",
"version": "0.0.5",
"project_urls": {
"Homepage": "https://github.com/niharokz/pidgeotto"
},
"split_keywords": [
"python",
"jinja2",
"pyyam",
"markdown2",
"static",
"site"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "9c8d56e9c6198d103e4840e47d2e46b2896b897061931b5cc07268f2f2c03925",
"md5": "f62016a91656a3cc25ea1150ce0b69cc",
"sha256": "a8ec0f6b981d720052d2dc8f90c4d5b6c9f69083fc386b3d601bb7b950c00c65"
},
"downloads": -1,
"filename": "pidgeotto-0.0.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f62016a91656a3cc25ea1150ce0b69cc",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 9919,
"upload_time": "2023-06-25T15:01:54",
"upload_time_iso_8601": "2023-06-25T15:01:54.538671Z",
"url": "https://files.pythonhosted.org/packages/9c/8d/56e9c6198d103e4840e47d2e46b2896b897061931b5cc07268f2f2c03925/pidgeotto-0.0.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3f9192bf7726cb62ffa76a56d3e29a688ad8c560f05e7fe2719363ce5521806a",
"md5": "a0d1b7e8dcaaf60544280921570f8760",
"sha256": "9327aacec1a30f6e23d417ece23a2e0afa3b746c90bd9a4ade638de8d6ca4499"
},
"downloads": -1,
"filename": "pidgeotto-0.0.5.tar.gz",
"has_sig": false,
"md5_digest": "a0d1b7e8dcaaf60544280921570f8760",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8279,
"upload_time": "2023-06-25T15:01:56",
"upload_time_iso_8601": "2023-06-25T15:01:56.116128Z",
"url": "https://files.pythonhosted.org/packages/3f/91/92bf7726cb62ffa76a56d3e29a688ad8c560f05e7fe2719363ce5521806a/pidgeotto-0.0.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-06-25 15:01:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "niharokz",
"github_project": "pidgeotto",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "markdown2",
"specs": []
},
{
"name": "Jinja2",
"specs": []
},
{
"name": "pyyaml",
"specs": []
}
],
"lcname": "pidgeotto"
}