This is a social media web site with an experimental forgetful reputation system, built on top of the training application from Ruby on Rails Tutorial: Learn Web Development with Rails (6th Edition) by Michael Hartl.
The Rating Stone web site lets you vote up, down or "meh" on all sorts of things (including the usual posts and pictures). Unlike other systems, we've made it slightly less evil - it forgives the past, and avoids appealing to the addictive side of Human nature.
You can find out more about Rating Stone's theoretical underpinnings in the related paper A Less Dystopian Reputation System. There's also a database design document that is essentially a blueprint for building the system, occasionally available in HTML when the prototype system is running.
The public version of the reputation system is licensed under the GNU General Public License version 3. The general idea is that if you improve the code, you should contribute your changes back to the public. See LICENSE.md for details. Only changes made after the completion of the tutorial are GPLv3 licensed, the earlier ones are MIT/Beerware licensed.
All source code in the Ruby on Rails Tutorial is available jointly under the MIT License and the Beerware License. See LICENSE.Hartl.md for details.
To get started with the app, clone the repo and then install the needed gems (assuming Ruby 3.1.0 and Rails 7.0.1 are already installed):
$ bundle install --without production
Next, create the database:
$ rails db:drop
$ rails db:create
$ rails db:migrate
$ rails db:seed
Then compile the assets (CSS style sheets, pictures and other data).
$ rails assets:clobber
$ rails assets:precompile
Finally, run the test suite to verify that everything is working correctly:
$ rails test
If the test suite passes, you'll be ready to run the app in a local server:
$ rails server
For more information, see the Ruby on Rails Tutorial book.