Simple microblogging network based on the ostatus protocol.
JavaScript Ruby CoffeeScript
Pull request Compare This branch is 34 commits ahead, 1355 commits behind hotsh:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
config
controllers
models
public
tasks
test
views
.gitignore
.rvmrc
Gemfile
Gemfile.lock
LICENSE
README.md
Rakefile
config.rb
config.ru
config.yml.sample
helpers.rb
rstatus.rb

README.md

rstat.us

rstat.us is a microblogging site built on top of the ostatus protocol.

Helping out with rstat.us

If you'd like to contribute, here are some details:

  • The stack: ruby/sinatra/mongodb
  • The code
  • The documentation (need lots of improvement here!)
  • The Issues list, currently being moved to lighthouse from github.
  • Please fork the project and make a pull request
    • Pull requests will not be merged without tests/documentation
      • We use minitest/capybara for tests
      • We use docco (rocc) for documentation
      • If you think it doesn't need a test, make your case, I'm just saying.

Setting up a dev environment

First off: you will need MongoDB (www.mongodb.org). They have a quickstart guide for getting it installed and running.

Then do:

$ git clone https://github.com/$MY_GITHUB_USERNAME/rstat.us.git
$ cd rstat.us

Copy the config file; if you have actual Twitter API keys, you can add yours, but this file just needs to exist for the server to work.

$ cp config.yml.sample config.yml

Then update your gemset:

$ gem install bundler && bundle install

And start the server:

$ rackup

Bam! Visit http://localhost:9292/ in your browser, and you'll be good.

Compiling CSS and Javascript

We use Coffeescript (.coffee) or Sassy CSS (.scss) for javascript and CSS development respectively. When running the site locally, these files will automatically be compiled by the application when requested.

When preparing for deployment, we compress our stylesheets and javascripts, as well as embedding what images we can. To compile Coffeescript and SCSS, use the following rake task:

$ rake assets:compile

Note: This relies on some sort of coffee compiler being installed globally. If you get "undefined method 'compile' for nil:NilClass", that might be your problem. On Ubuntu, installing the nodejs package fixes this; for other systems, check out nodejs.org.

For coffee-script installation, check the docs.

You may also need the java runtime for asset compression, which is handled by jammit using yui compressor and closure compiler. Installing a JDK, such as OpenJDK should do the trick.

Running your own node

If you need help with this, then you're not ready to run one. Eventually, we plan on making this super easy, but until we feel that it's ready, we're keeping the instructions 'secret.' Sorry!