diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..e69de29 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..e3e706f --- /dev/null +++ b/LICENSE @@ -0,0 +1,19 @@ +The MIT License (MIT) +Copyright (c) 2018 Paul van Tilburg + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..5dd9585 --- /dev/null +++ b/README.md @@ -0,0 +1,56 @@ +# Wishlists + +A [Rocket](https://rocket.rs) 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](https://rocket.rs/guide/configuration/) 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](LICENSE-MIT) or http://opensource.org/licenses/MIT).