# mblog: A minimal markdown blog
A simple Markdown based blog that you can use every day.
## Main Features
- Very usable
- Customizable
- Simple to run
## Installation
This should be fairly easy to install, if you have **Python**
installed.
```shell
$ pip install mblog
```
## Usage
You should be generally able to start it with:
```shell
$ mblog
```
and in case that does not work, as:
```shell
$ python -m mblog
```
In some cases, your `python` could be named `python3`, so try:
```shell
$ python3 -m mblog
```
It launches as a web server running on port **5000** and tries to bind on all IP addresses (`0.0.0.0`).
You can override this behavior by manually specifying the `PORT` and `HOST` variables.
In a typical install, you should be able to open http://localhost:5000 in your browser. Use the [Login](/login)
link to sign in. The default password is `Password`. You should change it by following the directions
below.
## Database
Typically, when you want to run this on **Heroku** or a cloud provider, you may
want to use a MySQL database than the SQLite provider. Set the `DATABASE` environment
variable to `mysql://user:password@host/database`.
## Storage
By default, this software relies on the local file system. If you wish to use Cloud Hosting,
use **S3**, **MinIO** or some other service to host your files and images. Then use those
links directly when composing your blogs.
## Admin Credentials
You typically authenticate via the `ADMIN_PASSWORD_HASH` variable. Hashed Passwords
are obtained by hashing with **SHA-256** encoded to **Base64**:
For the default password which is `Password`, you would get its hash
as `588+9PF8OZmpTyxvYS6KiI5bECaHjk4ZOYsjvTjsIho=`
```shell
$ echo -n Password | openssl dgst -binary -sha256 | base64
588+9PF8OZmpTyxvYS6KiI5bECaHjk4ZOYsjvTjsIho=
```
## Acknowledgments
The original version of this can be found [here](<https://github.com/coleifer/peewee>).
This was taken and customized for adding File Uploads, Password Hashing, Better
Error Handling, Custom Branding with Python2 and Python3 Portability.
## Questions?
Reach out to me for any feedback.
Now Enjoy!
* Author: Karthik Kumar Viswanathan
* Web : https://karthikkumar.org
* Email : karthikkumar@gmail.com
Raw data
{
"_id": null,
"home_page": "https://github.com/guilt/mblog",
"name": "mblog",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "blog markdown flask minimal mblog",
"author": "Karthik Kumar Viswanathan",
"author_email": "karthikkumar@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/31/6c/29373bdc51c67f30c3b7f266dddbdae6a60ec545479960905d44171ef4b0/mblog-1.7.0.tar.gz",
"platform": null,
"description": "# mblog: A minimal markdown blog\n\nA simple Markdown based blog that you can use every day.\n\n## Main Features\n\n- Very usable\n- Customizable\n- Simple to run\n\n## Installation\n\nThis should be fairly easy to install, if you have **Python**\ninstalled.\n\n```shell\n$ pip install mblog\n```\n## Usage\n\nYou should be generally able to start it with:\n\n```shell\n$ mblog\n```\n\nand in case that does not work, as:\n\n```shell\n$ python -m mblog\n```\n\nIn some cases, your `python` could be named `python3`, so try:\n\n```shell\n$ python3 -m mblog\n```\n\nIt launches as a web server running on port **5000** and tries to bind on all IP addresses (`0.0.0.0`).\n\nYou can override this behavior by manually specifying the `PORT` and `HOST` variables.\n\nIn a typical install, you should be able to open http://localhost:5000 in your browser. Use the [Login](/login)\nlink to sign in. The default password is `Password`. You should change it by following the directions\nbelow.\n\n## Database\n\nTypically, when you want to run this on **Heroku** or a cloud provider, you may\nwant to use a MySQL database than the SQLite provider. Set the `DATABASE` environment\nvariable to `mysql://user:password@host/database`.\n\n## Storage\n\nBy default, this software relies on the local file system. If you wish to use Cloud Hosting,\nuse **S3**, **MinIO** or some other service to host your files and images. Then use those\nlinks directly when composing your blogs.\n\n## Admin Credentials\n\nYou typically authenticate via the `ADMIN_PASSWORD_HASH` variable. Hashed Passwords\nare obtained by hashing with **SHA-256** encoded to **Base64**:\n\nFor the default password which is `Password`, you would get its hash\nas `588+9PF8OZmpTyxvYS6KiI5bECaHjk4ZOYsjvTjsIho=`\n\n```shell\n$ echo -n Password | openssl dgst -binary -sha256 | base64\n588+9PF8OZmpTyxvYS6KiI5bECaHjk4ZOYsjvTjsIho=\n```\n\n## Acknowledgments\n\nThe original version of this can be found [here](<https://github.com/coleifer/peewee>).\n\nThis was taken and customized for adding File Uploads, Password Hashing, Better\nError Handling, Custom Branding with Python2 and Python3 Portability.\n\n## Questions?\n\nReach out to me for any feedback.\n\nNow Enjoy!\n\n* Author: Karthik Kumar Viswanathan\n* Web : https://karthikkumar.org\n* Email : karthikkumar@gmail.com\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "mblog: a minimal markdown blog",
"version": "1.7.0",
"split_keywords": [
"blog",
"markdown",
"flask",
"minimal",
"mblog"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "316c29373bdc51c67f30c3b7f266dddbdae6a60ec545479960905d44171ef4b0",
"md5": "e0b73d42b6ef4869877ae6d7402c0251",
"sha256": "61f2e03836d58f30d8a9a93cb420832ae73ee07994602fac8bf5bde4d98c4aba"
},
"downloads": -1,
"filename": "mblog-1.7.0.tar.gz",
"has_sig": false,
"md5_digest": "e0b73d42b6ef4869877ae6d7402c0251",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 382729,
"upload_time": "2023-03-20T23:42:58",
"upload_time_iso_8601": "2023-03-20T23:42:58.543657Z",
"url": "https://files.pythonhosted.org/packages/31/6c/29373bdc51c67f30c3b7f266dddbdae6a60ec545479960905d44171ef4b0/mblog-1.7.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-03-20 23:42:58",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "guilt",
"github_project": "mblog",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "mblog"
}