3 releases
0.1.2 | Dec 1, 2024 |
---|---|
0.1.1 | Dec 1, 2024 |
0.1.0 | Dec 1, 2024 |
#88 in HTTP server
318 downloads per month
31KB
356 lines
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
- Clone
cargo install --path .
Usage
- Go into your notes directory
hackable_notes
- 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.
Dependencies
~23–35MB
~599K SLoC