A web application for handling notes that are accessible to everyone (like on a pinboard).
Go to file
Paul van Tilburg f79b81cf17 Merge branch 'release/1.0.1' 2018-01-03 21:12:30 +01:00
lists Add a directory to keep the lists 2017-12-17 13:16:30 +01:00
src Add the app version to the home index template context 2018-01-02 12:48:58 +01:00
static Also change the label of the More-button when (un)collapsed 2018-01-03 21:08:19 +01:00
templates Add a footer; give the navbar the same style as the footer 2018-01-02 12:49:16 +01:00
test/lists Fix the list related tests to change the updatable list back 2018-01-01 22:17:56 +01:00
.gitignore Switch to Sass based custom CSS 2017-12-29 23:55:12 +01:00
CHANGELOG.md Add a changelog entry for the new version 2018-01-03 21:12:24 +01:00
Cargo.lock Bump the version to 1.0.1 2018-01-03 21:12:24 +01:00
Cargo.toml Bump the version to 1.0.1 2018-01-03 21:12:24 +01:00
LICENSE Add a REAMDE, LICENSE and (empty) CHANGELOG Markdown file 2018-01-02 13:18:58 +01:00
README.md Add a REAMDE, LICENSE and (empty) CHANGELOG Markdown file 2018-01-02 13:18:58 +01:00
Rocket.toml Fix the list related tests to change the updatable list back 2018-01-01 22:17:56 +01:00

README.md

Wishlists

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

Building

Because Rocket still requires a nightly version of Rust, Wishlist also requires it. The application has been tested with nightly-2017-12-21.

Wishlists uses a customized Bootstrap-style, to compile this, the Ruby implementation of Sass

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

Usage

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

$ touch lists/john_doe.list

After creating new lists, 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 lists (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 list while editing it in the client so other clients cannot edit it

License

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