A fast, simple markdown file viewer that renders .md files in your web browser.
- 🚀 Fast rendering - Built with Rust for maximum performance
- 🎨 Clean styling - Beautiful, readable HTML output
- 🌐 Web-based - View in any browser
- ✅ Well-tested - Comprehensive unit tests
- 🔧 Modular - Clean architecture with separated concerns
git clone <repository-url>
cd rsmd
cargo build --releaseThe binary will be available at target/release/rsmd.
Download pre-built binaries from the Releases page for:
- Linux (x86_64)
- macOS (x86_64 and Apple Silicon)
rsmd <markdown-file.md>This will start a web server at http://127.0.0.1:3000.
- View rendered markdown:
http://127.0.0.1:3000/ - View raw markdown:
http://127.0.0.1:3000/raw
cargo run --release sample.mdThen open your browser to http://127.0.0.1:3000.
cargo build # Debug build
cargo build --release # Release buildcargo test # Run all tests
cargo clippy # Run linter
cargo fmt # Format codersmd/
├── src/
│ ├── main.rs # CLI entry point
│ ├── lib.rs # Library root
│ ├── markdown.rs # Markdown parsing
│ ├── html.rs # HTML template generation
│ └── server.rs # Web server and routing
├── .github/
│ └── workflows/
│ ├── ci.yml # CI testing
│ ├── release.yml # Release: build binaries on tags
│ ├── contributors.yml # Auto-update contributors
│ └── labeler.yml # Auto-label PRs and issues
└── sample.md # Example markdown file
Every push/PR to main runs automated checks:
Quality Checks:
- ✅ Tests on all platforms (Ubuntu, macOS, Windows)
- ✅ Clippy linter with
-D warnings(strict mode) - ✅ Code formatting check with
cargo fmt - ✅ Security audit (RustSec and cargo-deny)
- ✅ Code coverage (minimum 80% required)
Build Matrix:
- Linux x86_64 & ARM64
- macOS ARM64 (Apple Silicon)
- Windows x86_64
Create a release by pushing a version tag:
git tag v0.1.0
git push origin v0.1.0This automatically builds and publishes binaries for all supported platforms.
Utkarsh9571 💻 🚇 |
Arghya Sarkar 💻 🚇 |
pista 📝 🚧 🚇 💻 |
Thanks goes to these wonderful people!
To contribute, comment on an issue or PR with:
@all-contributors please add @username for <contribution type>
Contribution types: code, docs, bug, feature, design, infra, maintenance, test, etc.
We welcome PRs! Please read the Contributing Guidelines to understand the branching workflow, required checks, and expectations before opening a pull request.
MIT