Name | clerks-friend JSON |
Version |
1.1.2
JSON |
| download |
home_page | None |
Summary | Useful reports for Ward Clerk's of The Church of Jesus Christ of Latter-Day Saints |
upload_time | 2025-07-24 00:44:38 |
maintainer | None |
docs_url | None |
author | Isaac Wagner |
requires_python | <4.0,>=3.10 |
license | MIT |
keywords |
lcr
churchofjesuschrist
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Clerks Friend
<p>
<a href="https://clerks-friend.readthedocs.io/en/stable/">
<img src="https://img.shields.io/readthedocs/clerks-friend"/>
</a>
<a href="https://pypi.org/project/clerks-friend/">
<img src="https://img.shields.io/pypi/v/clerks-friend"/>
</a>
<a href="https://pypi.org/project/clerks-friend/">
<img src="https://img.shields.io/pypi/wheel/clerks-friend"/>
</a>
<a href="https://pypi.org/project/clerks-friend/">
<img src="https://img.shields.io/pypi/pyversions/clerks-friend"/>
</a>
<a href="https://github.com/IsaacsLab42/clerks_friend/">
<img src="https://img.shields.io/github/license/IsaacsLab42/clerks_friend"/>
</a>
<a href="https://black.readthedocs.io/en/stable/">
<img src="https://img.shields.io/badge/code_style-black-black"/>
</a>
</p>
---
## Introduction
Useful reports for Ward Clerk's of The Church of Jesus Christ of Latter-Day Saints. The
included script `clerks_friend` can run several useful reports and produce Markdown
style output. This output could be used by various programs to create HTML or PDF
output. Or, the way I use it, is to paste the markdown into Google Docs. They have a
feature where markdown can be pasted into a Google Doc and it will render the output.
## Installation
```bash
pip install clerks-friend
```
## Command Line Script
This package installs a command line script called `clerks_friend`:
```bash
$ clerks_friend --help
usage: clerks_friend [-h] [-u USERNAME] [-p PASSWORD] [-c COOKIE_FILE]
[-o MARKDOWN_OUTPUT]
INPUT_FILE
Run clerk reports from LCR for The Church of Jesus Christ of Latter-Day
Saints.
positional arguments:
INPUT_FILE input YAML file containing the report
configuration
options:
-h, --help show this help message and exit
-u USERNAME, --username USERNAME
LCR username [env var: LCR_USERNAME]
-p PASSWORD, --password PASSWORD
LCR password [env var: LCR_PASSWORD]
-c COOKIE_FILE, --cookie-file COOKIE_FILE
cookie jar file to save the session or load a
saved session
-o MARKDOWN_OUTPUT, --output MARKDOWN_OUTPUT
output file for markdown report. Defaults to
stdout.
```
## Authentication
The `clerks_friend` script requires your member username and password, for The Church of
Jesus Christ of Latter-Day Saints LCR system. There are three different ways to supply
these credentials:
1. On the command line, using the `--username` and `--password` options.
2. Through the environment variables `LCR_USERNAME` and `LCR_PASSWORD`.
3. From an environment file `.env`. This is the recommended option.
The `.env` file must be in the same directory that the script is run from. The file format is very simple:
```
LCR_USERNAME=ace
LCR_PASSWORD=ThePassword
```
## Report File Input
The input file, specifying which reports to run and their parameters, is a YAML file
format. As example is shown below:
```yaml
---
title: Celestial Ward Clerical Report
reports:
- name: not_set_apart
heading: Not Set Apart
- name: expiring_recommends
heading: "Expiring/Expired Temple Recommends"
parameters:
months_past: -3
months_future: 1
recommend_type: REGULAR
- name: protecting_children_and_youth_training
heading: Protecting Children and Youth Training
parameters:
months_future: 1
- name: sacrament_meeting_attendance
heading: Sacrament Meeting Attendance
parameters:
year: 2024
```
## Valid Reports
The currently valid report types are:
* expiring_recommends
* members_moved_in
* members_moved_out
* not_set_apart
* protecting_children_and_youth_training
* sacrament_meeting_attendance
As time permits I would like to add additional reports. If you would like to help add
more reports then please feel free to open a pull request, or an issue describing the
report you'd like.
## Cached Sessions
This script uses the [lcr_session](https://github.com/IsaacsLab42/lcr_session) library
to provide authentication. This library can also cache sessions, so that
re-authentication is not necessary if several reports need to be run in a row. For this
use the `--cookie-file` option. Church sessions are typically valid for one hour.
## Example
For example, save the above YAML sample as `report.yaml`. Create a `.env` file with your
LCR credentials, then run the following:
```bash
$ clerks_friend ./report.yaml -c cookies.txt -o report.md
```
A `report.md` file would be output with the results. This could then be copied and
pasted into a Google Document, which would render the markdown properly. Note that
markdown support must be enabled for the document, and you must select the "Paste from
markdown" option.
Raw data
{
"_id": null,
"home_page": null,
"name": "clerks-friend",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": "lcr, churchofjesuschrist",
"author": "Isaac Wagner",
"author_email": "14634+IsaacsLab42@users.noreply.github.com",
"download_url": "https://files.pythonhosted.org/packages/ca/3c/24023b739269728cb61d625191c3f39d3898095faa1638f4bd265a3d3fc3/clerks_friend-1.1.2.tar.gz",
"platform": null,
"description": "# Clerks Friend\n\n<p>\n <a href=\"https://clerks-friend.readthedocs.io/en/stable/\">\n <img src=\"https://img.shields.io/readthedocs/clerks-friend\"/>\n </a>\n <a href=\"https://pypi.org/project/clerks-friend/\">\n <img src=\"https://img.shields.io/pypi/v/clerks-friend\"/>\n </a>\n <a href=\"https://pypi.org/project/clerks-friend/\">\n <img src=\"https://img.shields.io/pypi/wheel/clerks-friend\"/>\n </a>\n <a href=\"https://pypi.org/project/clerks-friend/\">\n <img src=\"https://img.shields.io/pypi/pyversions/clerks-friend\"/>\n </a>\n <a href=\"https://github.com/IsaacsLab42/clerks_friend/\">\n <img src=\"https://img.shields.io/github/license/IsaacsLab42/clerks_friend\"/>\n </a>\n <a href=\"https://black.readthedocs.io/en/stable/\">\n <img src=\"https://img.shields.io/badge/code_style-black-black\"/>\n </a>\n</p>\n\n---\n\n## Introduction\n\nUseful reports for Ward Clerk's of The Church of Jesus Christ of Latter-Day Saints. The\nincluded script `clerks_friend` can run several useful reports and produce Markdown\nstyle output. This output could be used by various programs to create HTML or PDF\noutput. Or, the way I use it, is to paste the markdown into Google Docs. They have a\nfeature where markdown can be pasted into a Google Doc and it will render the output.\n\n## Installation\n\n```bash\npip install clerks-friend\n```\n\n## Command Line Script\n\nThis package installs a command line script called `clerks_friend`:\n\n```bash\n$ clerks_friend --help\nusage: clerks_friend [-h] [-u USERNAME] [-p PASSWORD] [-c COOKIE_FILE]\n [-o MARKDOWN_OUTPUT]\n INPUT_FILE\n\nRun clerk reports from LCR for The Church of Jesus Christ of Latter-Day\nSaints.\n\npositional arguments:\n INPUT_FILE input YAML file containing the report\n configuration\n\noptions:\n -h, --help show this help message and exit\n -u USERNAME, --username USERNAME\n LCR username [env var: LCR_USERNAME]\n -p PASSWORD, --password PASSWORD\n LCR password [env var: LCR_PASSWORD]\n -c COOKIE_FILE, --cookie-file COOKIE_FILE\n cookie jar file to save the session or load a\n saved session\n -o MARKDOWN_OUTPUT, --output MARKDOWN_OUTPUT\n output file for markdown report. Defaults to\n stdout.\n```\n\n## Authentication\n\nThe `clerks_friend` script requires your member username and password, for The Church of\nJesus Christ of Latter-Day Saints LCR system. There are three different ways to supply\nthese credentials:\n\n1. On the command line, using the `--username` and `--password` options.\n2. Through the environment variables `LCR_USERNAME` and `LCR_PASSWORD`.\n3. From an environment file `.env`. This is the recommended option.\n\nThe `.env` file must be in the same directory that the script is run from. The file format is very simple:\n\n```\nLCR_USERNAME=ace\nLCR_PASSWORD=ThePassword\n```\n\n## Report File Input\n\nThe input file, specifying which reports to run and their parameters, is a YAML file\nformat. As example is shown below:\n\n```yaml\n---\ntitle: Celestial Ward Clerical Report\n\nreports:\n - name: not_set_apart\n heading: Not Set Apart\n\n - name: expiring_recommends\n heading: \"Expiring/Expired Temple Recommends\"\n parameters:\n months_past: -3\n months_future: 1\n recommend_type: REGULAR\n\n - name: protecting_children_and_youth_training\n heading: Protecting Children and Youth Training\n parameters:\n months_future: 1\n\n - name: sacrament_meeting_attendance\n heading: Sacrament Meeting Attendance\n parameters:\n year: 2024\n```\n\n## Valid Reports\n\nThe currently valid report types are:\n\n* expiring_recommends\n* members_moved_in\n* members_moved_out\n* not_set_apart\n* protecting_children_and_youth_training\n* sacrament_meeting_attendance\n\nAs time permits I would like to add additional reports. If you would like to help add\nmore reports then please feel free to open a pull request, or an issue describing the\nreport you'd like.\n\n\n## Cached Sessions\n\nThis script uses the [lcr_session](https://github.com/IsaacsLab42/lcr_session) library\nto provide authentication. This library can also cache sessions, so that\nre-authentication is not necessary if several reports need to be run in a row. For this\nuse the `--cookie-file` option. Church sessions are typically valid for one hour.\n\n\n## Example\n\nFor example, save the above YAML sample as `report.yaml`. Create a `.env` file with your\nLCR credentials, then run the following:\n\n```bash\n$ clerks_friend ./report.yaml -c cookies.txt -o report.md\n```\n\nA `report.md` file would be output with the results. This could then be copied and\npasted into a Google Document, which would render the markdown properly. Note that\nmarkdown support must be enabled for the document, and you must select the \"Paste from\nmarkdown\" option.\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Useful reports for Ward Clerk's of The Church of Jesus Christ of Latter-Day Saints",
"version": "1.1.2",
"project_urls": {
"Bug Tracker": "https://github.com/IsaacsLab42/clerks_friend/issues",
"Documentation": "https://clerks-friend.readthedocs.io/en/stable/",
"Homepage": "https://github.com/IsaacsLab42/clerks_friend",
"Repository": "https://github.com/IsaacsLab42/clerks_friend"
},
"split_keywords": [
"lcr",
" churchofjesuschrist"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "1af71c66227647f40ec5af128bc71eff0e781d9bb270c3aaf19fb41d8a1dec20",
"md5": "607bd5c4ec7193a337504b8c44fd5cc1",
"sha256": "80a4fc7e16a059099ecd1fac8f434720fb4a38f7f76c7038450941def205e594"
},
"downloads": -1,
"filename": "clerks_friend-1.1.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "607bd5c4ec7193a337504b8c44fd5cc1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 10075,
"upload_time": "2025-07-24T00:44:37",
"upload_time_iso_8601": "2025-07-24T00:44:37.682324Z",
"url": "https://files.pythonhosted.org/packages/1a/f7/1c66227647f40ec5af128bc71eff0e781d9bb270c3aaf19fb41d8a1dec20/clerks_friend-1.1.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ca3c24023b739269728cb61d625191c3f39d3898095faa1638f4bd265a3d3fc3",
"md5": "842f9659f17e4b9b656ba524ef881bfd",
"sha256": "78095f16fecc6533f9fa0017195a530750c8bfb0e7b7e5828ecc8c9b8b5c68ad"
},
"downloads": -1,
"filename": "clerks_friend-1.1.2.tar.gz",
"has_sig": false,
"md5_digest": "842f9659f17e4b9b656ba524ef881bfd",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 8123,
"upload_time": "2025-07-24T00:44:38",
"upload_time_iso_8601": "2025-07-24T00:44:38.816938Z",
"url": "https://files.pythonhosted.org/packages/ca/3c/24023b739269728cb61d625191c3f39d3898095faa1638f4bd265a3d3fc3/clerks_friend-1.1.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-24 00:44:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "IsaacsLab42",
"github_project": "clerks_friend",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "clerks-friend"
}