notebook.ai Tool for world building
Go to file
2016-11-06 13:34:32 -06:00
.github Update CONTRIBUTING.md 2016-11-06 13:34:32 -06:00
app Handle camel case properly when redirecting to multi-word controller paths 2016-11-06 18:25:24 +01:00
bin Refactor style using the Rubocop auto-correct 2015-03-25 22:42:45 -05:00
config Show character aliases in form 2016-11-02 21:54:58 +01:00
db Stop trying to drop tables that don't exist - fixes #166 2016-11-05 23:09:35 +01:00
docs Add relations to groups 2016-10-24 14:52:30 +02:00
features Update some tests 2016-11-03 18:29:15 -05:00
lib Add data migrations for english languages and human races 2016-10-24 22:43:12 +02:00
log Merge resolution 2015-03-13 20:12:42 -05:00
public mock up branching timeline look 2016-10-30 14:06:10 +01:00
script Add Cucumber 2016-07-11 20:46:35 -05:00
spec Fix duplicate keys in tests 2016-11-03 18:37:51 -05:00
vendor/assets Optimize javascript load times 2016-11-02 23:41:00 -05:00
.coveralls.yml Create coveralls config file 2015-03-13 20:18:49 -05:00
.editorconfig Create editorconfig file 2016-09-21 12:07:12 -05:00
.gitignore Use rspec-prof 2016-10-02 14:18:05 -05:00
.rspec Install rspec 2016-09-29 18:54:42 -05:00
.rubocop.yml Fix Rubocop config capitalization 2016-08-26 14:58:11 -05:00
.ruby-version Update to ruby 2.3.1 2016-10-02 14:03:27 -05:00
.travis.yml Specify heroku app for travis to deploy to 2016-09-04 22:06:38 -05:00
CHANGELOG.rdoc Show modals again, function method changed apparently 2016-11-06 16:48:42 +01:00
config.ru Rubocop auto-correct 2016-08-26 14:56:52 -05:00
docker-compose.yml fixed project name & added newlines 2016-10-12 19:17:10 -04:00
Dockerfile fixed project name & added newlines 2016-10-12 19:17:10 -04:00
Gemfile Optimize javascript load times 2016-11-02 23:41:00 -05:00
Gemfile.lock Optimize javascript load times 2016-11-02 23:41:00 -05:00
Guardfile Rubocopification 2015-09-01 20:27:07 -05:00
LICENSE.rdoc Add MIT license 2016-09-30 18:53:56 +02:00
Procfile Add Puma and config some threading 2016-10-03 17:27:28 -05:00
Rakefile add devise secret 2016-04-07 01:14:04 -05:00
README.rdoc fixed notebook.ai url in readme 2016-10-16 16:38:06 -04:00

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

= notebook
{<img src="https://travis-ci.org/indentlabs/notebook.png?branch=master" alt="Build Status" />}[https://travis-ci.org/indentlabs/notebook]
{<img src="https://codeclimate.com/github/indentlabs/notebook/badges/gpa.svg" />}[https://codeclimate.com/github/indentlabs/notebook]
{<img src="https://codeclimate.com/github/indentlabs/notebook/badges/coverage.svg" />}[https://codeclimate.com/github/indentlabs/notebook/coverage]
{<img src="http://inch-ci.org/github/indentlabs/notebook.svg?branch=master" alt="Inline docs" />}[http://inch-ci.org/github/indentlabs/notebook]

== What is notebook?
see {live website}[http://notebook.ai/]

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 curl

    sudo apt-get install curl

Install rvm

    \curl -sSL https://get.rvm.io | bash

    source ~/.rvm/scripts/rvm

Install ruby 2.3.1

    rvm install ruby 2.3.1

    rvm use 2.3.1

Install rails 4.2.5

    gem install rails -v 4.2.5

Install necessary libraries

    sudo apt-get install imagemagick libmagickwand-dev

Clone the code

    git clone git@github.com:indentlabs/notebook.git

Install gems

    bundle install
    
Create database

    rake db:create

Run initial database migrations

    rake db:migrate

Finally, run the server with

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

== Running the notebook stack locally with Docker

- install {Docker}[https://www.docker.com/products/overview]
- 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 http://localhost:3000/

== Deployment to notebook.ai

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 notebook.ai)


== Thanks

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

(c) Andrew Brown 2016