obsidian.nvim is a Neovim plugin that integrates Obsidian vault functionality directly into Neovim. It provides note creation, linking, completion, navigation, image handling, synchronization, and templating features for markdown-based notes. The plugin leverages Neovim's API for LSP integration, autocommands, buffer management, and picker interfaces (telescope, fzf, snacks, mini) to deliver an Obsidian-like experience within Neovim. It maintains a cache of note metadata for performance and supports multiple workspaces with per-workspace overrides. The architecture is modular, separating concerns into commands, LSP handlers, note management, workspace handling, caching, search, picker abstraction, and completion sources.
NvChad is a Neovim configuration framework written in Lua that provides a modular, lazy-loaded base setup for Neovim. It enhances the editor with UI improvements (statusline, tabufline, theme picker), plugin management via lazy.nvim, and integrations for LSP, treesitter, telescope, and other popular plugins. The codebase is organized into distinct modules for options, mappings, autocommands, and plugin configurations, allowing users to import it as a plugin and override settings as needed. Key features include fast startup times (~0.02-0.07s), 93% lazy loading of plugins, and a focus on aesthetic UI components like NvCheatsheet and modern theme picker. The project is actively maintained with recent commits and demonstrates strong engineering practices for Neovim Lua configuration.
This repository is an Obsidian plugin that integrates GitHub Copilot's AI-powered coding assistance directly into the Obsidian note-taking application. It provides two main features: inline code suggestions as you type (similar to Copilot in IDEs) and a chat interface for interacting with Copilot in a sidebar. The plugin handles authentication with GitHub Copilot, manages conversation history, renders Mermaid diagrams from AI responses, and allows linking to Obsidian notes using [[double bracket]] syntax in chat conversations. The architecture separates concerns into distinct modules for inline suggestions (using LSP protocol) and chat functionality (using direct API calls), with React powering the chat UI and Zustand managing state.