#documentation #lsp #hover

nightly oak-hover

Hover information and documentation lookup support for the Oak framework

6 releases

Uses new Rust 2024

new 0.0.6 Mar 4, 2026
0.0.5 Mar 3, 2026
0.0.4 Feb 15, 2026
0.0.2 Jan 30, 2026

#791 in Text editors

Download history 26/week @ 2026-01-20 120/week @ 2026-01-27 99/week @ 2026-02-03 276/week @ 2026-02-10 151/week @ 2026-02-17 196/week @ 2026-02-24

752 downloads per month
Used in 123 crates (122 directly)

MPL-2.0 license

295KB
4.5K SLoC

🚀 oak-hover

Crates.io Documentation

Hover Information Provider for the Oak Ecosystem — A lightweight, trait-based library for providing hover information in editors and IDEs.

🎯 Why oak-hover?

Hover information is essential for modern developer experience — it provides instant feedback about symbols, types, and documentation without leaving the editor. oak-hover provides a simple, unified interface for implementing hover support in any Oak-based language parser.

✨ Key Features

  • 🎯 Trait-Based Design — Clean HoverProvider trait for language-specific hover logic
  • 📝 Markdown Support — Rich formatting for documentation and type information
  • 📍 Range-Aware — Optional range information for precise hover targeting
  • 🔄 Serde Integration — Easy serialization for LSP implementations
  • 🧩 Zero Dependencies — Minimal footprint with optional serde support

🏗️ Architecture

The crate provides two main types:

  • Hover — Represents hover content with optional range
  • HoverProvider<L> — Trait for implementing language-specific hover

🔗 Ecosystem Integration

Works seamlessly with oak-lsp for full Language Server Protocol support and any editor that displays hover information.

📖 Documentation

For usage examples and API details, see the API documentation.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Dependencies

~5.5–8MB
~73K SLoC