2023-12-10 19:45:40 +01:00
|
|
|
# Omnia
|
2022-10-02 12:12:08 +02:00
|
|
|
|
2023-12-10 19:45:40 +01:00
|
|
|
`Omnia` is a tool to provide a common platform for everything. It is a tool
|
|
|
|
build to support note-taking, handling personal relationships, project
|
|
|
|
development, todos, research, up-keep of external work, and much more.
|
|
|
|
|
|
|
|
This may seem like a large list of tasks, and it is. However, Omnia is designed
|
|
|
|
to be opinionated, and provide a minimalistic approach to each of the above.
|
|
|
|
Omnia is not a general purpose tool, text editing tool, it is designed to fit
|
|
|
|
into your existing toolstack, with its opinionated project structure, and
|
|
|
|
workflow.
|
|
|
|
|
|
|
|
Alternatives to this tool:
|
|
|
|
|
|
|
|
- Notion: with second brain templates etc.
|
|
|
|
- Obsidian: with zen garden templates etc.
|
|
|
|
|
|
|
|
Omnia is a commandline tool, which functions using a terminal ui, or pure cli
|
|
|
|
commands. Called `interactive` for the former, and `prompt` for the latter. It
|
|
|
|
is designed to work with your favorite EDITOR, to keep the scope of this project
|
|
|
|
reasonable, `Omnia` doesn't try to bundle with an editor. Instead it will
|
|
|
|
respect your `OMNIA_EDITOR`, or `EDITOR` environment variables, and launch the
|
|
|
|
files using those.
|
|
|
|
|
|
|
|
## How to use `Omnia`
|
|
|
|
|
|
|
|
To launch the fully interactive view, simply type `omnia` in your shell of
|
|
|
|
choice. This will boot up the TUI, press `?` for help and it will show a brief,
|
|
|
|
menu as well as the most common keybinds.
|
|
|
|
|
|
|
|
Following each command will be shown separately, these will be available in the
|
|
|
|
UI as well, just follow along in the menu, or use the command key `:` to open
|
|
|
|
the command palette.
|
|
|
|
|
|
|
|
### Commands
|
|
|
|
|
|
|
|
In Omnia everything is designed to use Markdown files, even the templates are
|
|
|
|
markdown files, though with some special syntax to make prompting easier. This
|
|
|
|
also means that you can open your local ~/omnia directory using your favorite
|
|
|
|
editor, as everything is just markdown files.
|
|
|
|
|
|
|
|
Projects are the cornerstone of how Omnia functions. Every navigation item is a
|
|
|
|
project, be they todo lists, research items, external sites etc. Projects can be
|
|
|
|
nested, and projects can contain pages. External apps can be configured as a
|
|
|
|
project, and will need a certain interface to be functional.
|
|
|
|
|
|
|
|
This means that when you type a command:
|
|
|
|
|
|
|
|
`omnia --help`, each subcommand will be a project, some keywords are reserved:
|
|
|
|
(todo, inbox, project, etc.), each project decides which commands are available,
|
|
|
|
and this is fully customizeable, through our plugin system. Though note that we
|
|
|
|
ship the default view with a set of preconfigured plugins:
|
|
|
|
|
|
|
|
- todo
|
|
|
|
- inbox
|
|
|
|
- projects
|
|
|
|
- areas
|
|
|
|
|
|
|
|
Typing each of the commands above will open the fully interactive tui:
|
|
|
|
`omnia todo`. Todo has a set of commands available to it: `omnia todo create` as
|
|
|
|
an example. This will open the prompt view, which will interactive ask the user
|
|
|
|
to fill out a form. These questions will also be available using commandline
|
|
|
|
flags as well.
|
|
|
|
|
|
|
|
### Views
|
|
|
|
|
|
|
|
Some of the projects are built as views, this may be a list of recent
|
|
|
|
notifications on github, apis of interest, metrics and whatnot.
|
|
|
|
|
|
|
|
## Remote first
|
|
|
|
|
|
|
|
Omnia will sync remote first in nearly all cases. The only exception is in
|
|
|
|
progress forms and whatnot. This is to keep complexity down, as well as making
|
|
|
|
sure Omnia is as easily crossplatform as possible. You should be able to use
|
|
|
|
`Omnia` from all your terminal capable devices. This sprung out of my own need
|
|
|
|
for having my notes available everywhere, without having conflicts.
|