A web application for handling notes that are accessible to everyone (like on a pinboard).
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Paul van Tilburg e79940fe11
Update deny.toml
1 month ago
src Port to the 2018 edition 11 months ago
static Rename list to note throughout the application 3 years ago
templates Rename the package (and application) to Rocket Pinboard 2 years ago
test/notes More renaming of list to note (in test, docs, etc.) 2 years ago
.gitignore Ignore GNOME Builder's build config 2 years ago
CHANGELOG.md More renaming of list to note (in test, docs, etc.) 2 years ago
Cargo.lock Cargo update 1 month ago
Cargo.toml Update to Rocket 0.4.3 and toml 0.5; cargo update 10 months ago
LICENSE Add a REAMDE, LICENSE and (empty) CHANGELOG Markdown file 3 years ago
README.md Rename the package (and application) to Rocket Pinboard 2 years ago
Rocket.toml Fix the list related tests to change the updatable list back 3 years ago
config.toml Read config from config.toml; add it to the state 2 years ago
deny.toml Update deny.toml 1 month ago


Rocket Pinboard

A Rocket based web application written in Rust for maintaining a pinboard of notes for a family or group of friends. Similarly to a Wiki, all notes can be edited by everyone, as a board with physical notes would also allow.


Because Rocket still requires a nightly version of Rust, Rocket Pinboard also requires it. The application has been tested with nightly-2018-01-13.

Rocket Pinboard uses a customized Bootstrap-style, to compile this, use the Ruby implementation of Sass:

$ gem install sass
$ scss static/scss/pinboard.scss:static/csss/pinboard.css


The notes are stored as plain text files (in Markdown format) under the notes subdirectory. As an administrator of the application, you should touch a file with the extension .note in this subdirectory to create notes. The resulting note names are the title cased version of the snake cased filenames. For example to create a note for "John Doe":

$ touch notes/john_doe.note

After creating new notes, start (or restart) the application and then visit: http://localhost:8000/.

For setting up production or staging environments, see the Rocket documentation about configuring different environments.

To Do

There are still quite some things left to do. Here are some points of improvement for the future:

  • Use a Rust-implementation for Sass
  • Support different sets of notes (for different environments)
  • Get rid of hardcoded strings in the UI (for example the name of my family)
  • Add i18n to support several languages
  • Support locking a note while editing it in the client so other clients cannot edit it


Pinboard is licensed under the MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT).