is a set of tools for writers, game designers, and roleplayers to create magnificent universes – and everything within them.
Ruby HTML JavaScript CSS Other
Latest commit e0f01a6 Jul 15, 2018
Failed to load latest commit information.
.github Create Nov 6, 2016
app bar link Jul 14, 2018
bin add delayed_job table Oct 28, 2017
config use new moderator flag Jun 20, 2018
db Merge branch 'master' into thredded-15 Jun 20, 2018
docs finalize planet relations Jan 31, 2018
features swap factory_girl with factory_bot Jun 6, 2018
lib new page type categories Jan 29, 2018
log Merge resolution Mar 14, 2015
public Update 503 copy Jan 19, 2018
script Add Cucumber Jul 12, 2016
spec swap factory_girl with factory_bot Jun 6, 2018
test Add race link to deity Feb 2, 2018
vendor/assets Optimize javascript load times Nov 3, 2016
.coveralls.yml Create coveralls config file Mar 14, 2015
.editorconfig Create editorconfig file Sep 21, 2016
.gitignore Use rspec-prof Oct 2, 2016
.rspec Install rspec Sep 29, 2016
.rubocop.yml Fix Rubocop config capitalization Aug 26, 2016
.ruby-version Modernize ruby, bundler, and several gems Jun 6, 2018
.tool-versions local cleanup Jan 20, 2018
.travis.yml Update app name in travis deployment config Feb 6, 2017 Move all changelog info into GitHub Releases Nov 6, 2016
Dockerfile use 'bundle's version of 'rails' May 23, 2018
Gemfile include the new aws gem Jun 6, 2018
Gemfile.lock Upgrade thredded to 0.15.3 Jun 20, 2018
Guardfile Rubocopification Sep 2, 2015
LICENSE.rdoc Add MIT license Sep 30, 2016
Procfile add worker back to procfile ?????? Jan 18, 2018
README.rdoc restart Jul 15, 2018
Rakefile add devise secret Apr 7, 2016
app.json Remove unnecessary dependencies for app.json/staging Sep 29, 2017 Rename app internally from PlanCharacters to Notebook May 23, 2017
docker-compose.yml use 'bundle's version of 'rails' May 23, 2018


Build Status Inline docs

What is

see live website

notebook is a set of tools for writers, game designers, and roleplayers to create magnificent universes – and everything within them.

From a simple interface in your browser, on your phone, or on your tablet, you can do everything you'd ever want to do while creating your own little (or big!) world.

notebook is a writer's planning tool for creating anything from universes to characters, to plots, to individual items.

It is also meant to expand into many areas to benefit writers (and exciting to developers), including areas like:

  • Automated revision services

  • Structuring real-time natural language processing output into a semantically reusable state

  • Decision-making algorithms for improving reading comprehension, reading level, accent-correction, and other real-time writing suggestions

  • A knowledge graph of structured data in your universe, and an engine to manipulate it in awesome ways

  • Machine learning on generating character and location names, suggesting realistic defaults (random or not), and more

  • and tons more

The Issue Tracker

If you are interested in helping out, check out the issue tracker. I've loaded it with tons of action-based, chunk-sized improvements that I think anyone familiar with Rails will be able to jump in and complete. Feel free to make suggestions, open issues, join discussions, or ask where you should look in the code to get started implementing something. :)

You'll notice there are *a lot* of issues in *a lot* of milestones. Call it feature creep, but I've separated every potential idea for full-fledged services into milestones that can be worked on completely independently of others. The features are (for the most part) has no deadlines and are in development simultaneously, meaning if you see a feature you would really like to use, you can make that feature happen by jumping directly into it and completing its issues.

TL;DR Milestones are independent of each other – work on whatever you want to see made!

Installing the notebook stack locally

Install ruby 2.5.1

rbenv install 2.5.1

Install necessary libraries

sudo apt install imagemagick libmagickwand-dev
sudo apt install libpq-dev

Clone the code

git clone

Install gems

bundle install

Create database

rake db:create

Run initial database migrations

rake db:migrate
rake data_migrations:create_default_billing_plans
rake db:seed

Finally, run the server with

bundle exec rails server

You should now see a copy of the site running locally at localhost:3000/!

Running the notebook stack locally with Docker

  • install Docker

  • install Docker Compose

  • clone this git repo

  • cd into the root of this repo, and then run

    docker-compose up
  • You should now see a copy of the site running locally at localhost:3000/

Deployment to

Deployment to the live stage will only be done by approved developers, and consists of a deployment of

  • deploy github to staging (done only by approved developers)

  • mirror data from live into staging

  • run regression tests on staging environment

  • deploy from staging to live (viewed at


Feel free to get in touch if you have any questions, comments, or concerns! :)

© Andrew Brown 2016