Skip to content

osmoscraft/osmosnote

Repository files navigation

image

osmos::note

A web-based text editor for networked note-taking, self-hostable on any Git repository.

  • Retrieve knowledge as fast as you can type with zero-latency full-text search.
  • Make serendipitous discovery via backlink traversal.
  • Durable knowledge preservation with plaintext and Git backend.
  • Keyboard-centeric design for max efficiency.
  • Easy theming and customziation with JavaScript and CSS (coming soon).

Want a host-free alternative? Check out the sister project: Tundra.

Screenshot

image

Get started

With NPM (Linux, WSL, MacOS)

Install dependencies

Then run in terminal

npx @osmoscraft/osmosnote@latest

With Docker (All platforms)

Get Docker for your operating system

Run the app

docker run -p 6683:6683 osmoscraft/osmosnote

You can open the app in your browser, at http://localhost:6683. To exit, press Ctrl + Space, then press q.

Having trouble exit?
docker ps # Find your container_id in the output
docker kill container_id # Manually stop the container

Next steps

When running from the container, you won't be able to persist any content after the container exits. Follow the Storage setup guide to persist your notes.

Guides and references

  1. Storage setup guide
  2. Git hosting setup guide.
  3. Editor reference.
  4. Haiku language reference.
  5. Knowledge capture guide.

Supported browser

  • Chrome, Firefox are primary support targets.
  • Safari should work in theory. There is no guarantee.

Roadmap

This project is still in its early stage. Expect breaking changes and feature overhauls. Some ideas on top of my head:

  1. Theming. Since we have web technology, supporting CSS based theming is a no-brainer.
  2. Customizable Text Editor. I wrote my own text editor in order to optimize the UX for link insertion and indentation control. As a trade-off, the editor is not as customizable as other off-the-shelf solutions such as CodeMirror and Monaco. I will continue assess this trade-off and adopt open-source editor library as needed. Currently, a vim-like keybinding is supported with caveats. See notes for vim users.

Contributions

My top priority is to modularize the system so I can tackle customization and theming without building technical debt. Until then, I have limited bandwidth for new features. Ideas and bug reports are welcome. I'll get to them as soon as I free up. Thank you for being patient with this project.

Credits

This project is inspired by all of the great text editors and note taking apps out there. You should check them out and see if they are better solutions for you specific needs:

Ecosystem

Ecosystem

Browse other projects from the OsmosCraft ecosystem.

  • Read the web with Fjord
  • Manage bookmarks with Memo
  • Take notes with Tundra