Skip to main content

ViloLog: Simple blogging engine, built atop Vilo and PogoDB.

Project description

ViloLog

Simple blogging platform. Built with Python, atop Vilo (framework) and PogoDB (nosql).

ViloLog is a bit like Jekyll, but backed by a database, not the file system.

Installation

Install via pip:

pip install vilolog

ViloLog builds a pure WSGI application. To run that application, you'll need Waitress, Gunicorn or another WSGI server. We recommend using Waitress, with Hupper for development:

pip install waitress hupper

Quickstart

Pass a Postgres connection string to vilolog.buildApp(.) to create your blog.

Create module blog.py:

import vilolog;
app = vilolog.buildApp("postgres://...dsn..");
wsgi = app.wsgi;

Above, app is a Vilo app-container, and wsgi is the corresponding pure-WSGI callable. To run wsgi via Waitress atop Hupper:

hupper -m waitress blog:wsgi

Or without Hupper:

python -m waitress blog:wsgi

Hupper is useful for development and testing, but needn't be used in production.

Completing Setup

Once running, visit localhost:8080/_setup in your preferred browser to complete setup.

Logging In

After completing setup, you should be able to login to your blog. By default, you can log in by visiting /_login; but this can be configured via .buildApp(.)'s loginSlug parameter, documented below.

Options

vilolog.buildApp(.) accepts a number of parameters, only the first of which is required:

  • pgUrl (required, str): Postgres connection string.
  • blogId (optional, str): Useful if you have multiple blogs.
  • blogTitle (optional, str): Self explanatory.
  • blogDescription (optional, str): Self explanatory.
  • footerLine (optional, str): Footer attribution line.
  • cookieSecret (recommended, str): Secret for signing (authentication) cookie.
  • antiCsrfSecret (recommended, str): Secret for signing anti-CSRF token.
  • blogThemeDir (optional, str): Path to custom theme directory. (More on this later.)
  • _adminThemeDir (Non-recommended, str): Path to custom theme directory for the backend-admin UX.
  • devMode (optional, bool, default:False): Enable during development to prevent caching etc.
  • redirectMap (optional, dict): Mapping from source path to target path.
  • loginSlug (recommended, str, default:"_login"): The URL-slug for the login-page for admins. Must begin with "_login" and may only contain word characters, matching r'\w+'.
  • disableRemoteLogin(recommended, bool, default:False): If truthy, admins must login via localhost only.
  • remoteNetlocList: (optional, list of str): List of valid remote netlocs that the blog expects to run at. (Doesn't affect localhost.)
  • remoteHttpsOnly (recommended, bool, default:False): If truthy, HTTPS will be enforced, except on loclhost.

Note: While only pgUrl is required, we recommend explicitly passing each parameter that's labelled as 'recommended' above, even for picking default values.

Nascent Stage

ViloLog is currently in a nascent stage. As work progresses, we'll be adding docs, screenshots, theming, etc.

Licensing

Copyright (c) 2020 Polydojo, Inc.

Software Licensing:
The software is released "AS IS" under the GNU GPLv3+, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. Kindly see LICENSE.txt for more details.

No Trademark Rights:
The above software licensing terms do not grant any right in the trademarks, service marks, brand names or logos of Polydojo, Inc.

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

vilolog-0.0.7.tar.gz (29.0 kB view details)

Uploaded Source

Built Distribution

vilolog-0.0.7-py2.py3-none-any.whl (38.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file vilolog-0.0.7.tar.gz.

File metadata

  • Download URL: vilolog-0.0.7.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.24.0

File hashes

Hashes for vilolog-0.0.7.tar.gz
Algorithm Hash digest
SHA256 b3891ef859d0622f653d9ccc06c1d9d0fb099726d7e72f16acbec68197a6361e
MD5 0c961612950e59f2dfdcb3f7d3a48e6e
BLAKE2b-256 ef1fb4c8be63aa942606f7b56bca3accbf2f6c4ac81f88fba891956fc5ba77d6

See more details on using hashes here.

File details

Details for the file vilolog-0.0.7-py2.py3-none-any.whl.

File metadata

  • Download URL: vilolog-0.0.7-py2.py3-none-any.whl
  • Upload date:
  • Size: 38.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.24.0

File hashes

Hashes for vilolog-0.0.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 d858a8d224d3944383fbc94aca3743676a515bb8ba55184ad740b20065a7f4f6
MD5 6df8f3cf4f074335f41f3d8673cfc3a7
BLAKE2b-256 3432ecafe9c919fa2ac433f4bab8abeb4c20f92af9b687e8f0917e042f885650

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