https://github.com/basarsubasi/uniman
universal man page reader
https://github.com/basarsubasi/uniman
man unix
Last synced: 23 days ago
JSON representation
universal man page reader
- Host: GitHub
- URL: https://github.com/basarsubasi/uniman
- Owner: basarsubasi
- License: gpl-2.0
- Created: 2026-05-23T15:15:25.000Z (23 days ago)
- Default Branch: master
- Last Pushed: 2026-05-23T22:55:08.000Z (23 days ago)
- Last Synced: 2026-05-23T23:21:21.898Z (23 days ago)
- Topics: man, unix
- Language: Rust
- Homepage:
- Size: 169 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# `uniman` — Universal Man Pages
Read man pages of any operating system on any unix machine, natively.
https://github.com/user-attachments/assets/f292953a-0d72-4a23-b896-9bb3f6da32a8
## Dependencies
`uniman` delegates rendering to your system's man page renderer. Make sure you have either `man-db` or `mandoc` on your system.
`git` is required for cloning backends. `curl` is needed for HTTP-backed backends.
`fzf` is required for the interactive search and listing menus.
## Installation
### From Source
```bash
git clone https://github.com/your-org/uniman.git
cd uniman
cargo install --path .
```
## Configuration
`uniman` stores its data in two locations:
| Path | Purpose |
|------|---------|
| `~/.config/uniman/config.json` | Backend registry and settings |
| `~/.uniman/` | Backend data and SQLite index |
The config file is created automatically on first run with default backends. You can edit it to add custom man page backends.
To print the config path:
```bash
uniman config
```
## Default Backend
`uniman` sets a default backend for each OS automatically on first run:
to list all backends and the default backend, run:
```bash
uniman list
```
to change the default backend, run:
```bash
uniman default
```