Upload Markdown documents to Backlog Wiki with image and MermaidJS support
Project description
Gospelo Backlog Docs
Overview
Upload Markdown documents to Backlog Wiki with image and MermaidJS support.
The Story Behind
One day in a development team's Slack channel:
Engineer: "Where can I find the specs for this function?" Client: "In the head of Tanaka-san, who left the company last month."
The engineer looked up to the heavens and cried out:
"Dear God, save me from this documentation-less hell!"
At that moment, there seemed to be a divine revelation:
(Make it yourself.)
"...Fine. I'll build it. Automatically."
And thus, Gospelo was born.
A documentation tool for engineers that delivers "words of salvation" to the documentation wasteland and helps the "specs are in my head" guy finally find peace.
The name "gospel" + "pelo" came from a late-night coding session where the developer thought "I felt like God told me to make it myself, so I did (・ω<)☆". Issues about naming sense are not accepted.
"Gospel" means "good news" or "words of salvation" in Christianity.
Features
- Upload Markdown files to Backlog Wiki
- Automatic image upload and link conversion
- MermaidJS diagram conversion to PNG (requires mermaid-cli)
- Extract wiki page name from H1 title
- Support for hierarchical wiki page names (e.g.,
Parent/Child/Page) - Flexible credential management (CLI args, environment variables, .env files)
Installation
pip install gospelo-backlog-docs
Optional: MermaidJS Support
To enable MermaidJS diagram conversion, install mermaid-cli:
npm install -g @mermaid-js/mermaid-cli
Quick Start
1. Set up credentials
Create a .env file or set environment variables:
# .env
BACKLOG_SPACE_ID=your-space-id
BACKLOG_API_KEY=your-api-key
BACKLOG_DOMAIN=backlog.jp # or backlog.com
Or use the global config directory:
mkdir -p ~/.config/gospelo-backlog-docs
cp .env.example ~/.config/gospelo-backlog-docs/.env
# Edit the file with your credentials
2. Upload a Markdown file
gospelo-backlog-docs document.md --project PROJECT_KEY
Usage
gospelo-backlog-docs <markdown_file> --project <PROJECT_KEY> [options]
Arguments
| Argument | Description |
|---|---|
markdown_file |
Path to the Markdown file to upload |
--project, -p |
Backlog project key (required) |
--wiki-name, -n |
Wiki page name (defaults to H1 title or filename) |
--space-id, -s |
Backlog space ID |
--api-key, -k |
Backlog API key |
--domain, -d |
Backlog domain (default: backlog.jp) |
--env-file, -e |
Path to .env file |
--dry-run |
Parse only, do not upload |
--version, -v |
Show version |
Examples
# Basic upload
gospelo-backlog-docs docs/design.md --project MYPROJECT
# Specify wiki page name
gospelo-backlog-docs docs/design.md --project MYPROJECT --wiki-name "Design/UI Spec"
# Dry run (parse without uploading)
gospelo-backlog-docs docs/design.md --project MYPROJECT --dry-run
# Use specific .env file
gospelo-backlog-docs docs/design.md --project MYPROJECT --env-file .env.production
Credential Priority
Credentials are resolved in the following order (highest priority first):
- CLI arguments (
--space-id,--api-key,--domain) - Environment variables (
BACKLOG_SPACE_ID,BACKLOG_API_KEY,BACKLOG_DOMAIN) - Specified .env file (
--env-file) - Local
.envfile (current directory) - Global config
~/.config/gospelo-backlog-docs/.env
Markdown Features
Images
Local images are automatically uploaded:

External URLs are preserved as-is:

MermaidJS Diagrams
MermaidJS code blocks are converted to PNG images (requires mermaid-cli):
```mermaid
graph TD
A[Start] --> B[Process]
B --> C[End]
```
Wiki Page Name
The wiki page name is determined by:
--wiki-nameargument (if specified)- First H1 title in the Markdown file
- Filename (without extension)
Hierarchical names are supported:
# Parent/Child/Page Name
Requirements
- Python 3.10+
- requests
- python-dotenv
- mermaid-cli (optional, for MermaidJS support)
Documentation
License
MIT License - see LICENSE for details.
Third-Party Licenses
See THIRD_PARTY_LICENSES.md for dependency licenses.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gospelo_backlog_docs-1.0.0.tar.gz.
File metadata
- Download URL: gospelo_backlog_docs-1.0.0.tar.gz
- Upload date:
- Size: 26.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
de49ae74a50d1c7ff20d6f689a69a59312a20ed57a50b76b8355890f1f8a2bca
|
|
| MD5 |
524029f642b18450035bb9254fd6ec7d
|
|
| BLAKE2b-256 |
7e6c053ab83606449e46b04bfd4c5f8c420ab81c3099f472df442263f14b1b19
|
File details
Details for the file gospelo_backlog_docs-1.0.0-py3-none-any.whl.
File metadata
- Download URL: gospelo_backlog_docs-1.0.0-py3-none-any.whl
- Upload date:
- Size: 18.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
483ac1d22c1cf97cba5e8b21f9495a0113ef8d1a6008e788edf5ead618b4e90b
|
|
| MD5 |
cd3c13c0589e5e40b0a94908cfce078f
|
|
| BLAKE2b-256 |
e0ae342c66c524f20572817a0ce85f43c96b93f7a63e559a5be67fb8d6374a4b
|