https://github.com/jaredrummler/jsp
A command-line tool for Mormon enthusiasts and scholars to enhance their experience using the Joseph Smith Papers project.
https://github.com/jaredrummler/jsp
Last synced: about 1 year ago
JSON representation
A command-line tool for Mormon enthusiasts and scholars to enhance their experience using the Joseph Smith Papers project.
- Host: GitHub
- URL: https://github.com/jaredrummler/jsp
- Owner: jaredrummler
- License: mit
- Created: 2025-06-28T19:22:26.000Z (about 1 year ago)
- Default Branch: develop
- Last Pushed: 2025-06-28T20:22:51.000Z (about 1 year ago)
- Last Synced: 2025-06-28T20:31:22.512Z (about 1 year ago)
- Language: Python
- Size: 9.77 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# JSP: Joseph Smith Papers CLI Tool
A command-line tool for Mormon enthusiasts and scholars to enhance their experience using the [Joseph Smith Papers](https://www.josephsmithpapers.org/) project.
---
## β¨ Features
* **High-quality Image Retrieval**: Easily download and stitch high-resolution images from Joseph Smith Papers' OpenSeadragon viewer at maximum quality (JPEG quality 100 by default).
* **Advanced Content Extraction**: Extract structured webpage content into Markdown format, including:
- Document transcriptions with optional editing marks removal
- Source notes and historical introductions
- Document information and metadata
- Footnotes with proper formatting
- Tables with markdown conversion
- Editorial marks and annotations
- Citation information (Chicago, MLA, APA formats)
- Repository and archive information
* **Configuration Support**: Use JSON configuration files for consistent settings across multiple runs.
* **Browser Automation**: Optional browser-based extraction for accurate transcription rendering.
## π Use Cases
* **Historians**: Access high-fidelity images of original documents for scholarly publications.
* **LDS Members**: View high-resolution images of historical items such as the Book of Abraham facsimiles.
* **Researchers**: Download structured textual data from Joseph Smith Papers for detailed textual analysis, research, or AI-assisted analysis.
---
## π Installation
### Using pip (Recommended)
```bash
pip install jsp-papers
```
### Manual Installation
Clone the repository:
```bash
git clone https://github.com/yourusername/jsp.git
cd jsp
```
Run the install script (macOS/Linux):
```bash
./install.sh
```
For Windows users, manual installation instructions will be provided soon.
---
## βοΈ Usage
### Default command (runs all available tasks)
```bash
jsp process
```
### Individual commands
#### Download and stitch high-quality image:
```bash
jsp download-image
```
#### Scrape webpage content to Markdown:
```bash
jsp scrape-content
```
### Command Options
```bash
# Specify output directory
jsp process -o /path/to/output
# Set JPEG quality (1-100, default: 100)
jsp download-image --quality 95
# Disable browser automation for faster scraping
jsp scrape-content --no-browser
# Enable verbose output
jsp process -v
# Preview actions without executing
jsp process --dry-run
# Use configuration file
jsp process --config config.json
# Set custom timeout (in seconds)
jsp process --timeout 60
```
### Configuration File
Create a `config.json` file to set default options:
```json
{
"output_dir": "output",
"image_quality": 100,
"timeout": 30,
"use_browser": true,
"verbose": false,
"debug": false
}
```
### Output
By default, outputs will be placed in the following directory:
```
output/{url-path}/
βββ image.jpg # High-resolution stitched image
βββ content.md # Extracted content in Markdown format
βββ content.json # Structured data in JSON format
```
The Markdown file includes all extracted sections:
- Document breadcrumbs and navigation
- Main content
- Source notes with footnotes
- Historical introductions
- Document information
- Full transcription (with optional editing marks)
- Footnotes section
- Tables (if present)
- Metadata (citations and repository info)
Use the `-o` or `--output` option to specify a custom output directory.
---
## π Requirements
* **Python**: Version 3.9 or later recommended
* **Operating Systems**: macOS prioritized; Windows compatibility intended but not yet fully tested.
---
## π€ Contributing
Contributions are welcome! Please read our [contributing guide](CONTRIBUTING.md) and submit pull requests to our repository.
---
## π€ Agent Guidelines
For guidance on using AI-driven coding assistants, see:
- [AGENTS.md](AGENTS.md) for OpenAI-powered agents (Codex CLI / ChatGPT).
- [CLAUDE.md](CLAUDE.md) for Anthropicβs Claude agent.
---
## π License
This project is licensed under the [MIT License](LICENSE).
---
## π Issues & Feedback
Please submit any issues, bugs, or feature requests through [GitHub Issues](https://github.com/yourusername/jsp/issues).
---
*This project is actively under development.*