Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

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

persisted.nvim

MITLuav3.0.0

A Neovim plugin for managing sessions with git branching, autoloading, and Telescope integration.

GitHubGitHub
540 stars33 forks0 contributors

What is persisted.nvim?

Persisted.nvim is a session management plugin for Neovim that saves and restores editor state, including open buffers, window layouts, and cursor positions. It solves the problem of losing context between editing sessions by automatically persisting your work environment and allowing seamless switching between projects and git branches.

Target Audience

Neovim users who work across multiple projects or git branches and want to maintain persistent editing sessions without manual setup.

Value Proposition

Developers choose Persisted.nvim for its tight integration with git branching, Telescope-based session management, and extensive customization options through events and configuration, offering a more flexible alternative to built-in Vim session tools.

Overview

💾 Simple session management for Neovim with git branching, autoloading and Telescope support

Use Cases

Best For

  • Managing separate Neovim sessions for different git branches in a repository
  • Automatically restoring your editor layout when reopening a project
  • Switching between multiple projects with preserved buffer states
  • Integrating session management into a Telescope-based workflow
  • Customizing session behavior with pre/post save/load hooks
  • Filtering session autosaving/autoloading based on specific directories

Not Ideal For

  • Neovim users who work exclusively with temporary or disposable projects and don't need persistent sessions
  • Developers who use multiple editors interchangeably and require cross-editor session syncing
  • Users who prefer minimal plugin setups and rely solely on Vim's built-in session management
  • Projects where session files must be shared or version-controlled independently of git branches

Pros & Cons

Pros

Git Branch Sessions

Maintains separate sessions for different git branches within the same project, which is ideal for developers switching between features or fixes without losing context.

Telescope Integration

Provides a visual picker for browsing, loading, and managing sessions with custom actions like copy and delete, enhancing usability over command-line lists.

Custom Events and Hooks

Offers lifecycle events for pre/post save, load, and delete actions, allowing deep integration with other plugins or custom workflows, as shown in the README examples.

Automatic Session Handling

Supports autosaving on exit and autoloading on startup with configurable directory filters, reducing manual intervention while maintaining flexibility.

Cons

Configuration Complexity

With numerous options for autostart, autoload, directories, and hooks, setup can be overwhelming for users seeking a plug-and-play experience, as evidenced by the extensive configuration section.

Git Dependency

The git branch sessions feature requires git to be installed and the project to be in a git repository, limiting utility in non-git environments or when working outside version control.

Session Portability Issues

Changing the session save directory can make existing sessions unfindable, and sessions rely on Neovim's specific session options, reducing cross-editor compatibility.

Frequently Asked Questions

Quick Stats

Stars540
Forks33
Contributors0
Open Issues0
Last commit2 months ago
CreatedSince 2021

Tags

#telescope-extension#workflow-automation#session#vim-sessions#neovim-plugin#telescope#editor-productivity#neovim#lua#git-integration#session-management

Built With

N
Neovim
L
Lua

Included in

Neovim20.6k
Auto-fetched 5 hours ago

Related Projects

auto-sessionauto-session

A small automated session manager for Neovim

Stars1,841
Forks62
Last commit22 days ago
persistence.nvimpersistence.nvim

💾 Simple session management for Neovim

Stars995
Forks45
Last commit8 months ago
neovim-session-managerneovim-session-manager

A simple wrapper around :mksession.

Stars614
Forks61
Last commit5 months ago
possession.nvimpossession.nvim

Flexible session management for Neovim.

Stars397
Forks21
Last commit8 months 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