Welcome to the Wiki Stumble codebase. This app started out as an exercise which you can read all about on my blog. I'll be expanding it as I read Jason Swett's Complete Guide to Rails Testing, applying its lessons to the app.
In this app I wrote a comprehensive RSpec test suite for the first time. (My previous experience had been mostly with Minitest.) I also had to get creative to work around the limitations of the Wikipedia APIs.
The result is an app that surely can (and will) be improved and expanded, but is nevertheless an original solution to a previously unsolved problem: how to explore Wikipedia without the hit-or-miss results of totally random pages, and without slogging through long topic lists. In Wiki Stumble, the user gets personalized recommendations of articles based on user-selected categories and also based on the user’s reaction (thumbs up or down) to previous recommendations.
Bug reports and pull requests are welcome on GitHub at https://github.com/fpsvogel/wikistumble-rails.
- Ruby 3+
- Node.js 14+
- PostgreSQL 9.3+
- Checkout the wikistumble git tree from Github:
$ git clone git://github.com/fpsvogel/wikistumble-rails.git $ cd wikistumble-rails wikistumble-rails$
- Run Bundler to install gems needed by the project:
wikistumble-rails$ bundle
- If this is your first time using PostgreSQL, log in to PostgreSQL and create a user:
$ psql -U postgres postgres=# create role "your_username" login createdb postgres=# exit
- Create the development and test databases:
wikistumble$ rails db:create
- If you see an error about peer authentication, then you need to change one or two settings in pg_hba.conf, then try creating the databases again.
- Load the schema into the new database:
wikistumble$ rails db:schema:load
- Seed the database:
wikistumble$ rails db:seed
Distributed under the MIT License.