TUI for dnote (https://www.getdnote.com/)
Explore the docs »
Report Bug
·
Request Feature
A TUI (Terminal User Interface) for dnote
.
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
- Install rust: https://www.rust-lang.org/
- Install dnote: https://github.com/dnote/dnote#installation
You can download the tar.xz
file matching your operating system from the
releases page, extract it and execute the dnote-tui
binary.
cargo install dnote-tui
If you wish to install from the main branch directly, use
cargo install --git https://github.com/deepanchal/dnote-tui
Once it's installed, simply run
dnote-tui
I will offer additional installation methods once the project reaches a more stable state.
- Clone the repo.
git clone https://github.com/deepanchal/dnote-tui.git
- cd into repo.
cd dnote-tui
- Run tui
cargo run
Get started with dnote-tui quickly using Docker! This setup comes with pre-loaded test data so you can dive right into exploring the TUI features.
- Clone the repository and navigate to the project directory
git clone https://github.com/deepanchal/dnote-tui.git
cd dnote-tui
- To build the Docker image and run the dnote-tui container using Docker Compose, execute the following command:
docker compose run --rm dnote-tui
Or if you prefer to use Docker directly without Docker Compose, you can follow these steps:
# Build the docker image
docker build --build-arg RUST_VERSION=1.76.0 --build-arg DNOTE_VERSION=0.15.1 -t dnote-tui .
# Run the docker container
docker run --rm -it dnote-tui
cargo run
cargo build
cargo test
- Show basic TUI with three sections (Books, Pages, & Content)
- Create a dnote client
- Parse output from dnote cli to structs used by dnote client
- Add methods to perform write operations with dnote cli in dnote client
- Features
- Read Operations
- Read books from dnote cli into tui
- Read pages from dnote cli into tui
- Read pages content from dnote cli into tui
- Show truncated pages content beside page id in pages section
- Write Operations
- Search and Navigation
- Misc (Nice to have)
- Allow note syncing with dnote server #50
- Parse keybindings for active mode from current config file and show on footer #64
- Add ASCII art in header pane #57
- Show command log pane to show user what commands are being run just like lazygit #63
- Render note's markdown content with glow and make it toggleable #53
- Read Operations
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feat/amazing-feature
) - Commit your Changes (
git commit -m 'feat: add some amazing-feature'
) - Push to the Branch (
git push origin feat/amazing-feature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.