Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/skulltech/journalist
App to write journal digitally. Simple as that.
https://github.com/skulltech/journalist
diary flask github-api journal markdown markdown-to-html markdown-viewer
Last synced: 9 days ago
JSON representation
App to write journal digitally. Simple as that.
- Host: GitHub
- URL: https://github.com/skulltech/journalist
- Owner: skulltech
- Created: 2017-12-27T19:20:47.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2018-02-06T17:07:07.000Z (over 6 years ago)
- Last Synced: 2024-10-13T13:22:24.923Z (24 days ago)
- Topics: diary, flask, github-api, journal, markdown, markdown-to-html, markdown-viewer
- Language: Python
- Size: 127 KB
- Stars: 24
- Watchers: 4
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# journalist
App to write journal digitally.[![PyPI version](https://badge.fury.io/py/journalist.svg)](https://badge.fury.io/py/journalist)
## Features
- Write your journal using _Markdown_ in your favorite text-editor.
- Stores written journals in a comprehensive directory structure.
- View the journals (_Markdown_ rendered in _HTML_) in browser.# Installation
Install it using `pip`
```console
$ pip install journalist
```# Usage
```console
$ python3 journalist.py -h
usage: journalist.py [-h] {write,view} namepositional arguments:
{write,view} Task to do
name The name of the journaloptional arguments:
-h, --help show this help message and exit
```## Usage Examples
### Writing journal
Journals are stored in the directory `~/.journalist` in the following structure.
```console
$ tree .journalist
.journalist
└── journalname
└── YYYY
└── MM
└── YYYY-MM-DD-Day.md
```For example, an example `~/.Journalist` directory may contain
```console
$ tree .journalist
.journalist
├── personal
│ ├── 2017
│ │ └── 12
│ │ └── 2017-12-28-Thu.md
│ └── 2018
│ └── 01
└── technical
├── 2017
│ └── 12
│ ├── 2017-12-28-Thu.md
│ └── 2017-12-29-Fri.md
└── 2018
└── 01
└── 2018-01-03-Wed.md10 directories, 4 files
```To write in a the journal _personal_, type in the following...
```console
$ python3 journalist.py write personal
```- If any journal named _personal_ already exists, it will open up the relevant `.md` file corresponding to the system date (creating it if it doesn't exist).
- If any journal named _personal_ doesn't exist, it will prompt the user if they want to create a new journal. If they agree, it will do so and open the corresponding `.md` file as described above.The _markdown_ file will be opened in the editor mentioned in the `config.yaml` file (default is `nano`). If you change it to something else, make sure an file named `filename.md` can be opened using that editor by typing `editor filename.md` in the terminal.
### Viewing journal
```console
$ python3 journalist.py view personal
[*] Starting Journalist viewer webapp...
[*] View this journal at http://127.0.0.1:5000/journalist?name=personal
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
```Opening the [URL](http://127.0.0.1:5000/journalist?name=personal) http://127.0.0.1:5000/journalist?name=personal in the browser would show us the journal entries rendered in HTML.