{ "info": { "author": "marc0s", "author_email": "marc0s@fsfe.org", "bugtrack_url": null, "classifiers": [], "description": "# Oak\n\nOak is a simple static-blog generator. The goal is to have a blog backed\nup by a (D)VCS and that the blog itself is all made up by static content.\n\n## Status\n\nOak is already usable but lot of things are still left: testing, some \nthings still need to be reviewed, more layouts will be nice, ...\n\n## Design\n\nThe design principles are:\n\n1. all the blog site is made up of static content, no hole\n for SQL-injection or similar,\n1. version controled content, achieved now with git (but you're free to use\nwhatever system you want),\n1. you can write your posts with your favorite $EDITOR,\n1. easy syntax for the posts contents, using Markdown.\n\n## Implementation\n\nThe implementation of oak is done around a few python classes\nand libs.\n\nThere is the main package `oak` which is the responsible of\ngenerating the blog's content and of initializing the blog\npath structure.\n\nWe're using external python libraries such as Jinja2 for the \ntemplates and `python-markdown` for parsing the raw post files.\n\nGit is used to version the blog contents and the whole set of\nfolders that are involved in the process. But this is not\nmanaged by Oak, so you're free to use other VC system or none\nat all.\n\n## Workflow\n\nInitially, there is one git repo (let's call it Hub) living in\nthe server which will serve the blog. We have to clone it\nsomewhere else in the server (will call it Live). Live will\npull from Hub whenever a change occurs in Hub, so new content\ngets updated in the Live clone. One of the folders of the repository\nis the folder that holds the public content, let's assume it's\ncalled site/. That folder is the one which the webserver has to\npublish. The Live pulls are automatically done via git hooks.\n\nWhy don't use the Live clone directly? Using the Hub repository\nwill allow us to make as many clones as we want, and from any of\nthat clones we will be able to push new content to the blog.\n\n## Features\n\n* Secure\n* Lightweight\n* Easy to write syntax: Markdown\n* Code highlighting: thanks to Pygments\n* Small dependency set: just Git, Markdown, Jinja2, Pygments and YAML\n\n## Contact\n\nIf you want to collaborate with the oak development you can get in touch\nwith us in the #oakblog channel at irc.freenode.org. Also you can report\nbugs at https://dev.tenak.net/projects/oak. \n\nThere is also a mailing list at https://llistes.tenak.net/listinfo/oak", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/marc0s/oak", "keywords": null, "license": "WTFPL", "maintainer": null, "maintainer_email": null, "name": "Oak", "package_url": "https://pypi.org/project/Oak/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/Oak/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/marc0s/oak" }, "release_url": "https://pypi.org/project/Oak/0.1.8.1/", "requires_dist": null, "requires_python": null, "summary": "A simple static-blog generator", "version": "0.1.8.1" }, "last_serial": 784830, "releases": { "0.1.1dev": [ { "comment_text": "", "digests": { "md5": "de79038639a6010a212d9645309ef425", "sha256": "46c0be90ff34c45beaece8dc303f3447c0d1b6771b9effa211db7fcbac756038" }, "downloads": -1, "filename": "Oak-0.1.1dev.tar.gz", "has_sig": false, "md5_digest": "de79038639a6010a212d9645309ef425", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15745, "upload_time": "2010-07-22T20:25:25", "url": "https://files.pythonhosted.org/packages/dc/8e/76910bc27f69ac2e3727c6e45f51512395c34cc62378656724bfdb478070/Oak-0.1.1dev.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "8f28461d39185a7acbc17e48f9fc190e", "sha256": "f2bbadf26e5cf69bfbcd50efe9646fae41f8aaece7ffacddcfcb37d69f3bce29" }, "downloads": -1, "filename": "Oak-0.1.2.tar.gz", "has_sig": false, "md5_digest": "8f28461d39185a7acbc17e48f9fc190e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16706, "upload_time": "2010-07-23T17:45:22", "url": "https://files.pythonhosted.org/packages/9f/44/b5333bbfe530f14e75f708349817dc3c397e5a3c2a054cb766810631d454/Oak-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "4295964f2a485b3a62c0101767006c28", "sha256": "cb42bc1f48811fb43cafe2eb8754a4f97275ce4289f6c83489564d37de7e6360" }, "downloads": -1, "filename": "Oak-0.1.3.tar.gz", "has_sig": false, "md5_digest": "4295964f2a485b3a62c0101767006c28", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16807, "upload_time": "2010-07-24T19:19:05", "url": "https://files.pythonhosted.org/packages/f4/6a/bcf71f7a611bde3e9a441abddec0fe86942af2aa35dc5a630102962beba7/Oak-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "326889130f728dc7b6d3c6b6b3e49d97", "sha256": "10b9f141d84c2e5aea6a688ff3a6477cb634c17e5e8e7c54bae698a5dafc1c7b" }, "downloads": -1, "filename": "Oak-0.1.4.tar.gz", "has_sig": false, "md5_digest": "326889130f728dc7b6d3c6b6b3e49d97", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16795, "upload_time": "2010-07-27T16:02:05", "url": "https://files.pythonhosted.org/packages/7f/34/772428ee595ca564a3497f14ff07f2e99112b6e16260ad5545a9ab8e8524/Oak-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "593150a4d95094ceab41c510ca087cb6", "sha256": "df8855ba74438569eae4e10c5a0be3bfb8920639a09c49761d24ace04cc21ed2" }, "downloads": -1, "filename": "Oak-0.1.5.tar.gz", "has_sig": false, "md5_digest": "593150a4d95094ceab41c510ca087cb6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16945, "upload_time": "2010-07-27T20:58:06", "url": "https://files.pythonhosted.org/packages/86/cb/ec9ddcf94d1099e778d7d1d68effe83db7d30c90c4b4be3b8065654e76e4/Oak-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "4b8cbf4951c9c69a7b6959ca54b11533", "sha256": "c43fd70db441aa4a182e6aa7934527d6bc01267872be960f4ef4de68dde82ebe" }, "downloads": -1, "filename": "Oak-0.1.6.tar.gz", "has_sig": false, "md5_digest": "4b8cbf4951c9c69a7b6959ca54b11533", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16963, "upload_time": "2010-08-09T17:25:52", "url": "https://files.pythonhosted.org/packages/ce/27/7b3ac2c5e65ab70c64fe6b31570841041a9dcfb2bad46b5825374306b223/Oak-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "ca62e5c2945bf6dd0b054c28cb889076", "sha256": "366b5bef473d00458790d8dd923e494ab3e4d32ac3e6b77dc2a51e3ccf65421d" }, "downloads": -1, "filename": "Oak-0.1.7.tar.gz", "has_sig": false, "md5_digest": "ca62e5c2945bf6dd0b054c28cb889076", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16901, "upload_time": "2010-08-14T12:23:15", "url": "https://files.pythonhosted.org/packages/8c/08/d816b5d43399b87c96ad7234a465c71e55517857891e6ed8dcb98a9b96a6/Oak-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "f32028c212f98dca57df8ed35e1b2941", "sha256": "7cbfd27da915eabd98669a8fe3978a15d444d1d0315c504fc734f8465a9ced81" }, "downloads": -1, "filename": "Oak-0.1.8.tar.gz", "has_sig": false, "md5_digest": "f32028c212f98dca57df8ed35e1b2941", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19165, "upload_time": "2010-09-21T19:45:55", "url": "https://files.pythonhosted.org/packages/15/34/c9d5bda6a5afa75de956582c50890b8a312f189087212f91a340e156a3a4/Oak-0.1.8.tar.gz" } ], "0.1.8.1": [ { "comment_text": "", "digests": { "md5": "76b2e118a0d1e10a0bd8e097dc530cf2", "sha256": "3ba82584af6eec33cdfbb363b9580d281f6234bc6342aa6553419141913d4821" }, "downloads": -1, "filename": "Oak-0.1.8.1.tar.gz", "has_sig": false, "md5_digest": "76b2e118a0d1e10a0bd8e097dc530cf2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19177, "upload_time": "2010-09-22T21:58:45", "url": "https://files.pythonhosted.org/packages/4b/e8/1da1d7bfeef5d08f4cdd907682127e43ab894472fe11c93c80af7b6502d4/Oak-0.1.8.1.tar.gz" } ], "0.1dev": [ { "comment_text": "", "digests": { "md5": "d54a7951098585bc3f76f22fca961b85", "sha256": "8cdc7704f783dcaff24621d1fb73a60ab3c099e783bb2bbf35d549051fafa95a" }, "downloads": -1, "filename": "Oak-0.1dev.tar.gz", "has_sig": false, "md5_digest": "d54a7951098585bc3f76f22fca961b85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15620, "upload_time": "2010-07-21T23:22:36", "url": "https://files.pythonhosted.org/packages/be/a2/b0a71b41c3d446c669467f07816b37a73c9cf7a9bcdce9a6a7d3a6dd1618/Oak-0.1dev.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "76b2e118a0d1e10a0bd8e097dc530cf2", "sha256": "3ba82584af6eec33cdfbb363b9580d281f6234bc6342aa6553419141913d4821" }, "downloads": -1, "filename": "Oak-0.1.8.1.tar.gz", "has_sig": false, "md5_digest": "76b2e118a0d1e10a0bd8e097dc530cf2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19177, "upload_time": "2010-09-22T21:58:45", "url": "https://files.pythonhosted.org/packages/4b/e8/1da1d7bfeef5d08f4cdd907682127e43ab894472fe11c93c80af7b6502d4/Oak-0.1.8.1.tar.gz" } ] }