A Python library to facilitate the journinaling experience.
journalyze
is a python library that provides users with journaling prompts.
Current features are described below.
Some extra functionality in consideration includes sentiment classification.
pip install --upgrade journalyze
from journalyze import *
# Randomly select and return a prompt from the list of prompts in csv file
get_prompt()
# Randomly select and return an easy/short prompt
get_prompt_easy()
# Randomly select a given number of prompts and return
get_prompt_num()
# Adds a new given prompt to the list of prompts in csv file
add_prompt()
# Removes a given prompt from the list of prompts in csv file
remove_prompt()
# Searches the list of prompts for a keyword and returns a list of prompts that contain the keyword.
search_prompt()
Running the following code
import journalyze as dp
dp = DailyPrompt('journalyze/prompts.csv')
prompt = dp.get_prompt()
print(prompt)
Outputs something like this to the console
Describe yourself using the first 10 words that come to mind. Then list 10 words that you’d like to use to describe yourself. List a few ways to transform those descriptions into reality.
This project is a pure python project using modern tooling. It uses a Makefile
as a command registry, with the following commands:
make
: list available commandsmake develop
: install and build this library and its dependencies usingpip
make build
: build the library usingsetuptools
make lint
: perform static analysis of this library withflake8
andblack
make format
: autoformat this library usingblack
make annotate
: run type checking usingmypy
make test
: run automated tests withpytest
make coverage
: run automated tests withpytest
and collect coverage informationmake dist
: package library for distribution