return {
	{
		"epwalsh/obsidian.nvim",
		version = "*",
		lazy = true,
		ft = "markdown",
		dependencies = {
			"nvim-lua/plenary.nvim",
		},
		opts = {
			workspaces = {
				{
					name = "nvim",
					path = "~/Documents/obsidian/vault", -- Change to your vault path
				},
				--        {
				--          name = "work",
				--          path = "~/obsidian/work",  -- Optional: add more vaults
				--        },
			},

			-- Daily notes
			daily_notes = {
				folder = "daily",
				date_format = "%Y-%m-%d",
				template = nil,
			},

			-- Templates
			templates = {
				folder = "templates",
				date_format = "%Y-%m-%d",
				time_format = "%H:%M",
			},

			-- Completion
			completion = {
				nvim_cmp = true,
				min_chars = 2,
			},

			-- Use note title as filename
			note_id_func = function(title)
				if title ~= nil then
					return title
				else
					return tostring(os.time())
				end
			end,

			-- Disable UI features if you don't want them
			ui = {
				enable = true, -- Set to false to disable and suppress warning
			},

			-- Mappings (only active in markdown files)
			mappings = {
				-- Follow link under cursor
				["gf"] = {
					action = function()
						return require("obsidian").util.gf_passthrough()
					end,
					opts = { noremap = false, expr = true, buffer = true },
				},
				-- Toggle checkbox
				["<leader>ch"] = {
					action = function()
						return require("obsidian").util.toggle_checkbox()
					end,
					opts = { buffer = true },
				},
				-- Smart action (follow link or toggle checkbox)
				["<cr>"] = {
					action = function()
						return require("obsidian").util.smart_action()
					end,
					opts = { buffer = true, expr = true },
				},
			},
		},

		config = function(_, opts)
			require("obsidian").setup(opts)

			-- Set conceallevel for markdown files (for UI features)
			vim.api.nvim_create_autocmd("FileType", {
				pattern = "markdown",
				callback = function()
					vim.opt_local.conceallevel = 2
				end,
			})
		end,

		-- Global keymaps
		keys = {
			{ "<leader>on", "<cmd>ObsidianNew<cr>", desc = "New Obsidian note" },
			{ "<leader>oo", "<cmd>ObsidianQuickSwitch<cr>", desc = "Quick switch notes" },
			{ "<leader>os", "<cmd>ObsidianSearch<cr>", desc = "Search notes" },
			{ "<leader>ot", "<cmd>ObsidianToday<cr>", desc = "Today's note" },
			{ "<leader>oy", "<cmd>ObsidianYesterday<cr>", desc = "Yesterday's note" },
			{ "<leader>ob", "<cmd>ObsidianBacklinks<cr>", desc = "Show backlinks" },
			{ "<leader>og", "<cmd>ObsidianTags<cr>", desc = "Search tags" },
			{ "<leader>ol", "<cmd>ObsidianLink<cr>", mode = "v", desc = "Link selection" },
			{ "<leader>oL", "<cmd>ObsidianLinkNew<cr>", mode = "v", desc = "Link to new note" },
			{ "<leader>of", "<cmd>ObsidianFollowLink<cr>", desc = "Follow link" },
			{ "<leader>oT", "<cmd>ObsidianTemplate<cr>", desc = "Insert template" },
			{ "<leader>op", "<cmd>ObsidianOpen<cr>", desc = "Open in Obsidian app" },
		},
	},
}
