{"id":21214910,"url":"https://github.com/hadronized/mind","last_synced_at":"2025-07-10T11:30:51.985Z","repository":{"id":139188861,"uuid":"586193234","full_name":"hadronized/mind","owner":"hadronized","description":"The power of trees at your fingertips","archived":false,"fork":false,"pushed_at":"2023-09-02T18:38:33.000Z","size":284,"stargazers_count":67,"open_issues_count":2,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-11-16T16:07:27.103Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hadronized.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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}},"created_at":"2023-01-07T09:12:56.000Z","updated_at":"2024-10-05T00:07:27.000Z","dependencies_parsed_at":"2024-02-21T18:26:09.785Z","dependency_job_id":"708c50df-88b4-49ec-8be1-c56ff9f9b905","html_url":"https://github.com/hadronized/mind","commit_stats":null,"previous_names":["hadronized/mind","phaazon/mind"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hadronized%2Fmind","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hadronized%2Fmind/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hadronized%2Fmind/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hadronized%2Fmind/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hadronized","download_url":"https://codeload.github.com/hadronized/mind/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225633216,"owners_count":17499928,"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","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":[],"created_at":"2024-11-20T21:32:12.857Z","updated_at":"2024-11-20T21:32:22.159Z","avatar_url":"https://github.com/hadronized.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mind, the power of trees at your fingertips\n\n**Mind** is an organizer tool. It can be used to accomplish and implement a wide variety of workflows. It is\ndesigned to quickly add items in trees. _Why a tree?_ Well, list of things like TODO lists are great but they lack the\norganization part. Most of them can be gathered in “lists of lists” — you probably have that on your phone. A list of\nlist is basically a tree. But editing and operating a list of list is annoying, so it’s better to have a tool that has\nthe concept of a node and a tree as a primitive.\n\n**Mind** trees can be used to implement workflows like:\n\n- Journaling. Have a node for each day, which parent will be the month, which parent will be the year, etc.\n- Note taking. You are in the middle of a meeting and you heard something important? Don’t write that in a Markdown\n  document in your `~/documents` that is probably already a mess: open your **Mind** tree and add it there!\n- “Personal wiki.” Because of the nature of a tree, it is convenient to organize your personal notes about your work\n  services, other teams’ products, OKRs, blablabla by simply creating trees in trees!\n- Task management. Why not having a tasks tree with three or four sub-trees for your backlog, on-going work, finished\n  work and cancelled tasks? It’s all possible!\n\nThe possibilities are endless.\n\n# Features\n\n**Mind** features two main concepts; global trees and local trees:\n\n- A global tree is a tree that is unique to your machine / computer. Opening your main **Mind** tree from Neovim will\n  always open and edit that tree. It’s basically your central place for your **Mind** nodes.\n- A local tree is a tree that is relative to a given directory. **Mind** implements a `cwd`-based local form of tree, so\n  you can even share those trees with other people (as long as they use **Mind** as well).\n\nAtop of that, **Mind** has the concept of “project” trees, which are either a global tree, or a local tree. A global\nproject tree is stored at the same place as your main tree and the purpose of such a tree is to be opened only when your\n`cwd` is the same as the tree, but you don’t want the tree to be in the actual `cwd`. That can be the case if you work\non a project where you don’t want to check the tree in Git or any versioning system.\n\nOn the other side, a local project tree is what it means: it lives in the `cwd`, under `.mind`, basically.\n\nBesides that, **Mind** allows you to manipulate trees and nodes. Feature set:\n\n- Everything is interactive.\n- Cursor-base interaction. Open a tree and start interacting with it!\n  - Expand / collapse nodes.\n  - Add a node to a tree by adding it before or after the current node, or by adding it inside the current node at the\n    beginning or end of its chilren.\n  - Rename the node under the cursor.\n  - Change the icon of the node under the cursor.\n  - Delete the node under the cursor with a confirmation input.\n  - Select a node to perform further operations on it.\n  - Move nodes around!\n  - Select nodes by path! — e.g. `/Tasks/On-going/3345: do this`\n- Supports user keybindings via keymaps. Keymaps are namespaced keybindings. They keymaps are fixed and defined by\n  **Mind**, and users can decide what to put in them. For instance, you have the _default_ keymap for default\n  navigation, _selection_ keymap for when a node is selected, etc. etc.\n- Nodes are just text, icons and some metadata by default. You can however decide to associate them with a _data file_,\n  for which the type is user-defined (by default Markdown), or you can turn them into URL nodes.\n- A data node will open its file when triggered.\n- A URL node will open its link when triggered.\n- More to come!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhadronized%2Fmind","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhadronized%2Fmind","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhadronized%2Fmind/lists"}