Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Neovim
  3. hologram.nvim

hologram.nvim

MITLua

A cross-platform terminal image viewer for Neovim that displays inline images directly in buffers using the Kitty Graphics Protocol.

GitHubGitHub
1.4k stars33 forks0 contributors

What is hologram.nvim?

Hologram.nvim is a terminal image viewer plugin for Neovim that allows developers to view images inline within their editor buffers. It solves the problem of needing to switch to external applications to preview images when working with markdown files, documentation, or any text containing image references. The plugin uses the Kitty Graphics Protocol to render images directly in compatible terminals.

Target Audience

Neovim users who work with markdown files, documentation, or any text-based content containing image references and want to preview images without leaving their terminal workflow.

Value Proposition

Developers choose Hologram.nvim because it provides seamless inline image viewing in terminal-based Neovim with high performance through Lua/C implementation, extensibility through a public API, and support for advanced terminal graphics protocols.

Overview

👻 A cross platform terminal image viewer for Neovim. Extensible and fast, written in Lua and C. Works on macOS and Linux.

Use Cases

Best For

  • Previewing images in markdown files without leaving Neovim
  • Viewing image references in documentation directly in the editor
  • Developing Neovim plugins that require image display capabilities
  • Working with image-heavy text files in terminal-based workflows
  • Creating live previews for technical documentation with images
  • Building custom image display functionality on top of the exposed API

Not Ideal For

  • Users on Windows or terminals that don't support the Kitty Graphics Protocol
  • Projects requiring a stable, production-ready plugin without breaking changes
  • Teams needing support for image formats beyond PNG, like JPG or GIF

Pros & Cons

Pros

Inline Visuals

Enables viewing images directly in Neovim buffers with proper positioning and transparency retention, as demonstrated in the showcase GIF and feature list.

High Performance

Written in Lua and C with efficient image transmission, allowing fast display and dynamic adjustments without re-transmitting data, as noted in the performance claims.

Extensible API

Exposes a Lua API for programmatic image manipulation, enabling integration with other plugins and custom use cases, as shown in the image.lua examples.

Dynamic Adjustments

Supports real-time image adjustments like size and position changes without flicker or delay, detailed in the display method documentation.

Cons

Experimental Stability

Marked as highly experimental with expected breaking changes in the README, making it unreliable for critical or long-term projects.

Limited Compatibility

Only works with terminals supporting the Kitty Graphics Protocol on macOS and Linux, excluding Windows and other protocols like iTerm2 without roadmap implementation.

Manual Configuration

Auto-display feature is WIP and prone to issues, requiring manual API calls for reliable image display, as admitted in the setup notes.

Frequently Asked Questions

Quick Stats

Stars1,437
Forks33
Contributors0
Open Issues25
Last commit2 years ago
CreatedSince 2021

Tags

#markdown-preview#developer-tools#c#neovim-plugin#image-processing#cross-platform#lua

Built With

N
Neovim
L
Lua
C
C++

Included in

Neovim20.6k
Auto-fetched 17 hours ago

Related Projects

image.nvimimage.nvim

🖼️ Bringing images to Neovim.

Stars2,040
Forks107
Last commit1 month ago
img-clip.nvimimg-clip.nvim

Embed images into any markup language, like LaTeX, Markdown or Typst

Stars927
Forks38
Last commit7 months ago
cord.nvimcord.nvim

🚀 Discord Rich Presence for Neovim

Stars677
Forks25
Last commit6 days ago
clipboard-image.nvimclipboard-image.nvim

Neovim Lua plugin to paste image from clipboard.

Stars336
Forks57
Last commit2 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub