An omnipresent multi-platform bot who's goal in life is become Skynet
Clone or download
Pull request Compare This branch is 135 commits ahead, 7 commits behind mutewinter:master.
Failed to load latest commit information.
config Untested backup.rb changes. May 9, 2013
db db folder now included in repo Aug 21, 2012
docs/dev Add developer quickstart guide. Apr 2, 2015
images Shrank width of arrow sprite Jan 5, 2012
lib Added Time zone argument to !next help Oct 25, 2016
locales This is how JBot knows how to refer to itself. :) Sep 4, 2014
log Added empty log folder Aug 23, 2012
pid Including empty pid folder for development Aug 23, 2012
public Somehow, an errant svn folder got committed. Feb 16, 2015
sass Sayonara whitespace and line ending problems Apr 18, 2013
test Combine ticker plugins, and remove Mt. Gox stuff since it's defunct now. Sep 23, 2015
views Update Google Analytics tracking ID Jun 30, 2015
.codeclimate.yml Add mdlint, scsslint & reek engines to codeclimate Oct 29, 2016
.csslintrc Add Code Climate support Aug 19, 2016
.env.example Clarify DATA_JSON_URL parameter Oct 28, 2016
.eslintignore Add Code Climate support Aug 19, 2016
.eslintrc Add Code Climate support Aug 19, 2016
.gitignore New .gitignore Sep 4, 2014
.powrc Don't use /.ruby_version. Use /.ruby-version instead. Mar 9, 2015
.rubocop.yml Add Code Climate support Aug 19, 2016
.ruby-version Lets switch to ruby 2.0! Sep 4, 2014 Major overhaul of the CONTRIBUTING document. Apr 2, 2015
Gemfile Update Gemfile Aug 20, 2016
Gemfile.lock Add a pile of acceptance tests. Sep 11, 2015 Break license into Dec 16, 2014
Procfile Remove freenode references May 8, 2013
Procfile.local Get rid of hardcoded development port; update May 12, 2013 Clarify configuration. Oct 28, 2016
Rakefile Add a pile of acceptance tests. Sep 11, 2015 Merge documentation changes from master into devel. Apr 2, 2015
cinchize.yml.example Clarify data_json setting for the Admin plugin Oct 28, 2016
coffeelint.json Add Code Climate support Aug 19, 2016 Lets use gzip compression. Jun 30, 2015
environment.rb Lets not set this BEFORE it's been loaded. Jan 19, 2015
showbot_irc.rb syck has been replaced with psych. Make the warning go away. Aug 21, 2015
showbot_web.rb Lets switch to ruby 2.0! Sep 4, 2014

Stories in Ready Code Climate Issue Count


A sweet IRC bot with a web interface for Jupiter Broadcasting. Built on cinch and sinatra. It is a fork/evolution of Showbot, built for 5by5.

IRC Commands

To get a list of the available commands on your JBot instance, send it the follwing message once it is connected to an IRC network:


(Make sure your JBot is allowed to send private messages on the IRC network!)

Setup and Customization



These commands will get you setup to run the stable version of Showbot.

  • git clone
  • cd Showbot
  • bundle
  • foreman run rake db:migrate

If you would like to run the development version of Showbot, use the following commands instead:

  • git clone
  • cd Showbot
  • git checkout devel
  • bundle
  • foreman run rake db:migrate

Configuring JBot

For JBot to work correctly, you need to set up your .env file in the root of the project. Start by copying the .env.example file to .env and edit accordingly.

You also need to set up your cinchize.yml file. Copy cinchize.yml.example to cinchize.yml, and edit accordingly. To deactivate a plugin, comment out all lines related to that plugin in cinchize.yml. Don't forget to also update the connection settings and your bot's name.

NOTE: If you choose to configure a plugin it MUST be disabled, otherwise the bot will fail to start.

Lastly, you will need to create a data.json file. This file can be hosted by JBot's web server by putting it into public/, or can be hosted externally by setting the DATA_JSON_URL variable in .env to the URL. To learn more about data.json, read up on its documentation in docs/dev/

Launching Showbot

Website and the IRC Bot

$ bundle exec foreman start -f Procfile.local

Just the Website

$ bundle exec foreman start web -f Procfile.local

Just the IRC Bot

$ bundle exec foreman start irc -f Procfile.local

Modifying the CSS

Modifying showbot.scss requires that you start the rake sass:watch command. While this command is running, public/showbot.css will be overwritten with any changes that are made in showbot.scss. This annoying setup is necessary due to Bourbon not working well outside of the Rails asset pipeline.

Want to help out?

Check out our CONTRIBUTING doc to find out how to contribute to JBot.

Special Thanks

  • Special thanks to Rikai for reverse-engineering the setup steps for someone setting up Showbot from scratch.
  • To gouwens for implementing the clustered view.

JBot on the Internets

The Creation of Showbot