A basketball tourney application.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


@page bitballs Bitballs @group bitballs.components Components @group bitballs.clientModels Client Models @group bitballs.services Services @group bitballs.serviceModels Service Models @hide contents

Build Status

Bitballs is a DoneJS app that enables users to coordinate the players, teams, games, rounds and recordings of a basketball tournament. It also serves as an example of how to use DoneJS with sessions, user privileges, RESTful services, and ORM models.

To run the Bitballs app locally, run its tests, or generate its documentation follow the steps outlined below.

Setup Environment

Make sure you have installed:

Installing PostgreSQL on OSX

On a Mac, the easiest way to install and configure PostgreSQL is using the brew utility:

brew install postgresql

Pay special attention to the end of the brew command's output, which includes instructions on how to start postgres:

To load postgresql:
  launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
Or, if you don't want/need launchctl, you can just run:
  postgres -D /usr/local/var/postgres

The provided launchctl command ensures the postgres process is always running, even after a system restart. The alternative postgres command starts the postgres process manually.

We recommend the launchctl option. If desired, postgres can be stopped and uninstalled by running:

brew uninstall postgresql

Installing PostgreSQL on Linux

Coming Soon

Installing PostgreSQL on Windows

Download and use the graphical installer available on postgresql.org. Make sure you host it listen to port 5432.

Open pg_hba.conf, which should be in C:\Program Files\PostgreSQL\9.5\data, and change from md5 authentication to trust. For example, change:

host all all md5


host all all trust

trust should not be used in a production environment. We are only using it here as a substitute for the peer mode available in UNIX environments. Read more about it here.

Finally, using pgAdmin III graphical database manager, which should have been installed with postgres, create a bitballs database.

Download Source

Clone this repo using git:

git clone https://github.com/donejs/bitballs.git

Navigate to the repository's directory

cd bitballs

Prepare the Database

Make sure the postgres process is running:

ps | grep postgres

You should see "postgres -D" among the output:

92831 ttys000    0:00.02 postgres -D /usr/local/var/postgres
92856 ttys000    0:00.00 grep postgres

With that confirmed we can create the database that the bitballs app will persist its data to:

createdb bitballs

Install Dependencies

To install the project's JavaScript dependencies run:

npm install

Additionally DoneJS's command line utilities need to be installed globally:

npm install -g donejs-cli

Start the Server

With all the prerequisite setup completed the server can be started by running:

donejs start

Register a User

Navigate to http://localhost:5000/register in your browser and follow the instructions.


You're finished! Explore some of the app's features:

  • Live reload (donejs develop)
  • Run the tests (donejs test)
  • Generate the documentation (donejs document)