Wiki's for nerds, by nerds
Project description
Salt Docs CLI
Wiki's for nerds, by nerds
How it works
flowchart LR
A[Codebase] --> B[Crawl Files]
B --> C[Analyze Structure]
C --> D[Identify Abstractions]
D --> E[Generate Documentation]
E --> F[Markdown Docs]
Installation
Option 1: Install from PyPI
pip install salt-docs
Option 2: Install from source
git clone https://github.com/itsjustmithun/salt-docs-cli.git
cd salt-docs-cli
pip install -e .
Quick Start
1. Initial Setup
Run the setup wizard to configure your API keys and preferences:
salt-docs init
This will:
- Prompt for your Gemini API key
- Optionally ask for GitHub token (for private repos)
- Set default output location (
~/Documents/Salt Docs) - Configure other preferences
2. Generate Documentation
Analyze GitHub repository
salt-docs --repo https://github.com/username/repo
Analyze local directory
salt-docs --dir /path/to/your/codebase
With custom options
salt-docs --repo https://github.com/username/repo --output /custom/path --language spanish --max-abstractions 15
Configuration
Salt Docs stores configuration in ~/Documents/Salt Docs/.salt/config.json and uses your system's keyring for secure API key storage.
Configuration Options
output_dir: Default output directorylanguage: Default language for generated docsmax_abstractions: Default number of abstractions to identifymax_file_size: Maximum file size in bytesuse_cache: Enable/disable LLM response cachinginclude_patterns: Default file patterns to includeexclude_patterns: Default file patterns to exclude
Managing Configuration
View Current Configuration
salt-docs config show
Update API Keys
# Update Gemini API key (interactive)
salt-docs config update-gemini-key
# Update Gemini API key directly
salt-docs config update-gemini-key "your-api-key-here"
# Update GitHub token (interactive)
salt-docs config update-github-token
# Update GitHub token directly
salt-docs config update-github-token "your-token-here"
Update Other Settings
# Change default language
salt-docs config set language spanish
# Change max abstractions
salt-docs config set max_abstractions 15
# Disable caching
salt-docs config set use_cache false
# Update output directory
salt-docs config set output_dir /custom/path
CLI Options
Required
--repoor--dir- GitHub repo URL or local directory path
Optional
-n, --name- Project name (derived from repo/directory if omitted)-t, --token- GitHub personal access token-o, --output- Output directory (overrides config default)-i, --include- File patterns to include (e.g., ".py", ".js")-e, --exclude- File patterns to exclude (e.g., "tests/", "docs/")-s, --max-size- Maximum file size in bytes (default: 100KB)--language- Language for generated docs (default: "english")--no-cache- Disable LLM response caching--max-abstractions- Maximum number of abstractions to identify (default: 10)
Migration from Old Version
If you were using the old python main.py approach:
- Install the new CLI:
pip install -e . - Run setup:
salt-docs init - Use the new commands:
salt-docs --repo <url>
The old approach is no longer supported - please use the new CLI commands.
Development
Setup for Development
git clone https://github.com/itsjustmithun/salt-docs-cli.git
cd salt-docs-cli
pip install -e .
salt-docs init
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 salt_docs-0.1.6.tar.gz.
File metadata
- Download URL: salt_docs-0.1.6.tar.gz
- Upload date:
- Size: 41.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
44a2277b68c660736e6b6b43c0db904e665f4df2ee6c92964ac639c4a778ebfc
|
|
| MD5 |
8ec7aa0102c0b9dfad0325be5e463ca7
|
|
| BLAKE2b-256 |
3c25337e09bfef5c686f6e15b09f6f6e51c7e613a64bc39403f1422d30043d9e
|
File details
Details for the file salt_docs-0.1.6-py3-none-any.whl.
File metadata
- Download URL: salt_docs-0.1.6-py3-none-any.whl
- Upload date:
- Size: 43.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f81644d09760fd01afde3c7cb6be15674f67f4af663b2240cd634e91a424d94b
|
|
| MD5 |
f2b6117a185602aa706a869894d70761
|
|
| BLAKE2b-256 |
48507207105acfdfeacef707a7576c96baace495b487ca3e6de1ee2e08c51945
|