{"id":29903607,"url":"https://github.com/owen-dechow/videre.nvim","last_synced_at":"2025-09-04T00:33:19.803Z","repository":{"id":303504603,"uuid":"1015722554","full_name":"Owen-Dechow/videre.nvim","owner":"Owen-Dechow","description":"JSON explorer using Neovim's terminal interface.","archived":false,"fork":false,"pushed_at":"2025-08-14T17:09:58.000Z","size":88,"stargazers_count":87,"open_issues_count":2,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-08-18T05:15:55.524Z","etag":null,"topics":["graph","json","neovim","terminal"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Owen-Dechow.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-08T00:15:14.000Z","updated_at":"2025-08-16T09:32:24.000Z","dependencies_parsed_at":"2025-07-08T02:29:10.731Z","dependency_job_id":"faee26d2-6c8a-46c7-8ff1-15bd024159fa","html_url":"https://github.com/Owen-Dechow/videre.nvim","commit_stats":null,"previous_names":["owen-dechow/nvim_json_graph_view","owen-dechow/videre.nvim"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Owen-Dechow/videre.nvim","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Owen-Dechow%2Fvidere.nvim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Owen-Dechow%2Fvidere.nvim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Owen-Dechow%2Fvidere.nvim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Owen-Dechow%2Fvidere.nvim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Owen-Dechow","download_url":"https://codeload.github.com/Owen-Dechow/videre.nvim/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Owen-Dechow%2Fvidere.nvim/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273533785,"owners_count":25122633,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-03T02:00:09.631Z","response_time":76,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["graph","json","neovim","terminal"],"created_at":"2025-08-01T17:01:30.629Z","updated_at":"2025-09-04T00:33:19.794Z","avatar_url":"https://github.com/Owen-Dechow.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📊 videre.nvim\n\nMany editors have the option to view JSON \u0026 YAML files as a graph. Neovim, with a\nterminal interface, does not have this luxury. While one can't create an\ninterface like JSON Crack, it is possible to build a similar JSON explorer\nusing Neovim's terminal interface.\n\n[Videre Preview](https://github.com/user-attachments/assets/eb09e14b-4243-4b27-9928-1c20fec5d337)\n\n```\n╭──────────────────┬──╮╭──┬──┬──────────────────────────────────╮╭──┬──────┬───────────╮\n│            Videre│[]├╯  │ 1│··········\"This is a great plugin\"││  │  user│·\"will try\"│\n│           Example│{}├╮  │ 2│·············\"Look at this number\"││  │isTrue│\"100% True\"│\n╰──────────────────┴──╯│  │ 3│······························3467││  ╰──────┴───────────╯\n                       │  │ 4│······························null││\n                       │  │ 5│···\"The Next lines will be hidden\"││\n                       │  ╪.....................................││\n                       │  ╰──┴──────────────────────────────────╯│\n                       ╰──┬────────────┬────────────────────────╮│\n                          │ empty_array│······················[]││\n                          │ empty_table│······················{}││\n                          │        test│\"This is some test data\"├╯\n                          ╰────────────┴────────────────────────╯\n```\n\n\u003e [!NOTE]\n\u003e This plugin is still under development. Breaking changes will be avoided\n\u003e unless deemed necessary.\n\n## 🛠️ Features\n\n* Algorithmic Graph Rendering\n* Collapsible Units\n* Jumping Between Linked Units\n* Set Any Unit as Root\n* Customizable Styles\n* Support for Different Filetypes\n\n## ⚙️ Setup\n\n[lazy.nvim](https://github.com/folke/lazy.nvim) (Suggested Setup)\n```lua\nreturn {\n    \"Owen-Dechow/videre.nvim\",\n    cmd = \"Videre\",\n    dependencies = {\n        \"Owen-Dechow/graph_view_yaml_parser\", -- Optional: add YAML support\n        \"Owen-Dechow/graph_view_toml_parser\", -- Optional: add TOML support\n        \"a-usr/xml2lua.nvim\", -- Optional | Experimental: add XML support\n    },\n    opts = {\n        round_units = false,\n        simple_statusline = true, -- If you are just starting out with Videre,\n                                  --   setting this to `false` will give you\n                                  --   descriptions of available keymaps.\n    }\n}\n```\n\n[vim.pack](https://neovim.io/doc/user/pack.html#_plugin-manager)\n\n```lua\nvim.pack.add {\n    \"https://github.com/Owen-Dechow/videre.nvim\",\n    \"https://github.com/Owen-Dechow/graph_view_yaml_parser\", -- Optional: add YAML support\n    \"https://github.com/Owen-Dechow/graph_view_toml_parser\", -- Optional: add TOML support\n    \"https://github.com/a-usr/xml2lua.nvim\", -- Optional | Experimental: add XML support\n}\n\nrequire('videre').setup {\n    round_units = false,\n    simple_statusline = true, -- If you are just starting out with Videre,\n                              --   setting this to `false` will give you\n                              --   descriptions of available keymaps.\n}\n```\n\n\n## 🧩 Options\n```lua\n{\n    -- set the window editor type\n    editor_type = \"split\", -- split, floating\n\n    -- configure the floating window style\n    floating_editor_style = {\n        margin = 2,\n        border = \"double\",\n        zindex = 10\n    },\n\n    -- Number of lines before collapsing\n    max_lines = 5,\n\n    -- Set the unit style to round\n    round_units = true,\n\n    -- Set the connection style to round\n    round_connections = true,\n\n    -- Disable line wrapping for the graph buffer\n    disable_line_wrap = true,\n\n    -- Set side scroll off for graph buffer\n    side_scrolloff = 20,\n\n    -- Change the string between the keymap and\n    --   description of callback within the statusline\n    -- FOR FONTS WITH LIGATURES TRY USING \"꞊\" INSTEAD OF \"=\". \n    -- Other great options include \"-\u003e\", \": \", \"=\u003e\", \u0026 \" \".\n    keymap_desc_deliminator = \"=\",\n\n    -- Character used to represent empty space\n    space_char = \"·\",\n\n    -- Use simple statusline instead of providing\n    --   descriptions of keymaps.\n    simple_statusline = true,   \n\n    -- Show breadcrumbs to show where you are in\n    --   a Videre graph.\n    breadcrumbs = true,\n\n    -- Set the priority of keymaps for the quick\n    --   action keymap.\n    keymap_priorities = {\n            expand = 5,\n            link_forward = 4,\n            link_backward = 3,\n            link_down = 1,\n            link_up = 1,\n            collapse = 2,\n            set_as_root = 1,\n    },\n\n    -- Set the keys actions will be mapped to\n    keymaps = {\n        -- Expanding collapsed areas\n        expand = \"E\",\n\n        -- Collapse expanded areas\n        collapse = \"E\",\n\n        -- Jump to linked unit\n        link_forward = \"L\",\n\n        -- Jump back to unit parent\n        link_backward = \"H\",\n\n        -- Jump down a unit\n        link_down = \"J\",\n\n        -- Jump up a unit\n        link_up = \"K\",\n\n        -- Set current unit as root\n        set_as_root = \"R\",\n\n        -- Aliased to first priority available keymap\n        quick_action = \"\u003cCR\u003e\",\n\n        -- Close the window\n        close_window = \"q\"\n\n        -- Open the help menu\n        help = \"g?\",\n    }\n}\n```\n\n## 🚀 Running\n\nTo open a graph view, go to a json file and run `:Videre`.\nThe Videre window will open in a plit window to the right.\nThe Videre buffer will have a filetype of `Videre`.\n\n## 🗂️ Different File Types\n\nTo enable different filetypes just add the correct parser plugin.\nJsonGraphView will automatically detect the installed plugin and\nallow you to explore that filetype.\n\nHere are a list of supported parsers:\n* JSON: ***builtin***\n* YAML: [graph_view_yaml_parser](https://github.com/Owen-Dechow/graph_view_yaml_parser)\n* TOML: [graph_view_toml_parser](https://github.com/Owen-Dechow/graph_view_toml_parser)\n* XML **(Experimental)**: [xml2lua.nvim](https://github.com/a-usr/xml2lua.nvim)\n\nIf you would like to add a parser please open an issue or contribute a PR.\n\n## 🎯 Future Goals\n\u003e [!NOTE]\n\u003e These goals are long term and will only be started after this\n\u003e plugin is deemed stable and there is enough support.\n\n### 📚 Multiple Filetype Support\n\nAdd support for different filetypes such as YAML and TOML.\n\n(Issue: [Multiple Filetype Support *#4*](https://github.com/Owen-Dechow/nvim_json_graph_view/issues/4))\n\n### ✏️ File Editing\n\nAdd support for file editing directly form Videre.\n\n(Issue: [File Editing *#5*](https://github.com/Owen-Dechow/nvim_json_graph_view/issues/5))\n\n## 📄 License\n\nThis software is licensed under the MIT Standard License\n[(Copyright (c) 2025 Owen Dechow)](https://github.com/Owen-Dechow/nvim_json_graph_view/blob/main/LICENSE).\n\n## 🤝 Contributions\n\nContributions to this software are greatly appreciated.\nPlease read [CONTRIBUTING.md](https://github.com/Owen-Dechow/nvim_json_graph_view/blob/main/CONTRIBUTING.md)\nfor further guidelines.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fowen-dechow%2Fvidere.nvim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fowen-dechow%2Fvidere.nvim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fowen-dechow%2Fvidere.nvim/lists"}