Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
d50b database
Ruby PLpgSQL
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin 6.2.2 = update_email_count does all emails
README readme
Rakefile 5.0.1 = d50b tests + clearer exceptions in Money
d50b.gemspec 6.2.2 = update_email_count does all emails


My toolbox of models for my d50b database.
© 2014 50POP LLC | Contact: Derek Sivers


See [db-api](

Moving away from the PostgreSQL + Ruby Sequel models approach, and just put all of the smarts into the PostgreSQL database directly, using PL/pgSQL functions and schema restrictions.

For experiments, see [pg](


require 'd50b/peeps'
	Connects to database
	Loads stuff be shared by all d50b schemas - like Persony, Money and Location
	Loads peeps schema models
		BUT NOT: JSONAPI, JSONtest, Fixtures, or anything that wouldn't be used by a CLI script or production web app.  See below for those:

require 'd50b/test'
	Load this *first* instead of 'd50b', and it'll set some constant things so the d50b stuff loaded knows to use _test database, and load fixtures and such.
	That loads models for Fixtures
	Run sandbox apps in their own Ruby/Sinatra instance instead of just in one big Rackup file.  So environments don't get mixed up.

require 'd50b/api'
	Any necessary API-making tools

require 'd50b/musicthoughts'

require 'd50b/sivers'
	Admin of comments on blog posts

require 'd50b/woodegg'
	All Wood Egg models

===== NOTE:

When adding a new schema, run this query in psql:
    ALTER USER username SET search_path = peeps,muckwork,musicthoughts,sivers,woodegg,newschemaname;
... so that it will be seen with the psql command.

Something went wrong with that request. Please try again.