Skip to content
A web-based appointment scheduling tool
Python JavaScript CSS HTML
Latest commit 41d6e31 Sep 20, 2015 @sander Add screenshots to


This is the Pleft software that ran on (not owned anymore). See Pleft’s future for a discussion on further public hosting of Pleft.


Home Appointment


  1. Check out the source code (git clone git://
  2. Enter into the newly created pleft/ directory (cd pleft/).
  3. Decide which directory to put Pleft's environment in (export PLENV=~/env/pleft).
  4. Create a Pleft environment (python tools/ $PLENV).
  5. Create a file pleft/, based on one of the examples in that directory. If you just want to test Pleft, copy pleft/ to pleft/ to do that. You need to edit the file to modify some paths. Especially database information (i.e. DATABASE_NAME) and SECRET_KEY need to be changed. The SQLite database will be created automatically.
  6. Activate the Pleft environment (source $PLENV/bin/activate).
  7. Create the proper tables in the database (python pleft/ syncdb).


Activate the Pleft environment:

source $PLENV/bin/activate

Run the Pleft debug server:

python pleft/ runserver

In debug mode, emails are written to the console instead of being sent. If you need a link that was provided this way, note that characters like the = are escaped. So you might for example need to replace =3D with =.


If you want to test or deploy translations, install gettext and run:

python pleft/ mo


See Deploying Django.

If you are using MySQL, you need to make sure that the database is created using:


Also, for the user system to work, the email address field must be made case sensitive, using:

ALTER TABLE plauth_user MODIFY email VARCHAR(255) COLLATE utf8_bin

Publishing changes

Create commits for your changes. See Making changes for help.

There are two ways to publish changes to the code:

  • Create a fork of the repository and push your changes to it. See Fork A Repo. This makes it easy to review your code.
  • Create a patch file using the command git format-patch origin/master --stdout > filename.patch.


Feel free to contact our public mailing list at if you are stuck.

Something went wrong with that request. Please try again.