hackable_notes

Crates.iohackable_notes
lib.rshackable_notes
version
sourcesrc
created_at2024-12-01 20:54:13.065195
updated_at2024-12-01 21:06:40.172584
descriptionHackable, lightweight & extensible note-taking app
homepage
repositoryhttps://codeberg.org/jak2k/hackable_notes
max_upload_size
id1467833
Cargo.toml error:TOML parse error at line 17, column 1 | 17 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
Jak2k (Jak2k)

documentation

README

Hackable Notes

Hackable Notes is a lightweight, open source, and extensible note taking app written in Rust and extensible with JavaScript and CSS.

How it works

  • HTML (with jinja2) and Markdown are natively supported.
  • You hack your own features by adding JavaSripts and CSS styles.
  • Routes are exposed to ceate, edit, rename & delete files and to get the raw content of a file.

Installation & Distribution

From Crates.io

cargo install hackable-notes

From source

  1. Clone
  2. cargo install --path .

Usage

  1. Go into your notes directory
  2. hackable_notes
  3. Open http://localhost:13376/ in your browser

Change the app shell

You might want to create your own app shell. For example, if you want to create a completely different layout or even want to transform the UI into a SPA.

To do this, just place a file named app.html in the root of your notes directory. This file will be used as the shell for your notes. You might want to use the app.html file in the src directory as a starting point. It already contains a basic layout and core functionality.

Extend the app with plugins

Plugins are JavaScript files or CSS files that are loaded into the app. Just place them somewhere in your notes directory and add the path to the either the scripts or styles array in the config.toml file. You should start the path with a / to make it absolute to the root of your notes directory.

There is no plugin manager, but you can create one using the exposed api routes for creating, editing & deleting files.

License

All code in this repository, except for the plugins directory, is licensed under AGPL-3.0. See the LICENSE file for more information.

All plugins that are do not have a LICENSE file are licensed under CC-0 and thus can be used in any way you want.

Commit count: 0

cargo fmt