Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

twistranet - An Enterprise Social Network

Project description

This is the twistranet project!

(c)2011 NumeriCube (

Official website: / French version on


twistranet is an Enterprise Social Software. It’s a Social Network you can use to help people collaborate. And it is also a nice CMS (Content Management System) with a social focus.

twistranet is published under the termes of the GNU Affero General Public License v3.


TwistraNet is written in PYTHON (>= 2.6) Twistranet is based on Django Framework (as of writing, for v2.0.0 Django >= 1.4 is mandatory,)

If Django is always installed you can install twistranet over your Django platform. Otherwise The last Django version will be downloaded and installed at setup.

Other requirements:


Installation - short version

  • Install requirements (Python 2.6, pip and PIL)
  • In any directory, just execute:
    • (sudo) pip install numericube-twistranet

twistranet is now installed. You can have many sites with just one twistranet installation, so you need to explicitly deploy and bootstrap your new site.

  • (sudo) twistranet_project <path_to_my_new_site>

Don’t forget to write down your generated admin password (just look at first server start LOG)!!

Your server should now be fully working and running on http://localhost:8000 !

If you want to start it again:

  • cd <path_to_my_new_site>
  • python ./ runserver

Installation - the Big Picture

Installation is in fact a 2 steps process. You must install twistranet’s core features as a python library, then you have to create a project (which is an instance of a twistranet site).

To install twistranet’s core features:

  • Download and install Python >= 2.6 (with pip and PIL)
  • Execute (as a superuser) “pip install numericube-twistranet” ; this will normally download and install twistranet and all dependencies.

To create a new project:

  • In the directory you want your website files created, type “python twistranet_project -n [<template>] <project_path>”,
    where <project_path> is the name of your site (it will be created by the process) ; <template> is the name of the project template to deploy. Currently admitted values are:
    • ‘default’ (which is… the default value), an empty project based on sqlite;
    • ‘cogip’, a sample french-language project of a fictious company called COGIP.

The ‘-n’ (or ‘–no-bootstrap’) is an option to tell the twistranet_project script not to bootstrap it immediately (the bootstraping process is the initial database feed).

You can do it by hand once (and only once!) with the following commands:

  • Go to your <project_path>

  • Review the file and, change to whatever suits your needs.

    Among other things, carefully choose your DATABASE scheme, your LDAP/AD settings and the ‘admin’ password that has been generated for you.

  • Execute “./ bootstrap” to build the database

Running Twistranet :

  • Execute ./ runserver to start playing with twistranet.
  • Point your browser at http://localhost:8000

More informations

You can get more informations in the “docs” folder inside the package about:

  • installing pip
  • installing/upgrading/uninstalling twistranet with pip
  • installing twistranet with pip behind a proxy
  • installing Twistranet for testing and development (using virtualenv / installing in place the devel package from / localization / running tests …)
  • Running Twistranet in debug mode


No image / thumbnail on my fresh twistranet instance!

This is probably a problem with python-imaging installation. Just install PIL for your OS.

Under debian, the easiest is to do “apt-get install python-imaging”.

error: Could not find required distribution Django

If you’ve got this message, that means the autoinstall procedure of twistranet can’t install django automatically. Just install django (see either from sources or from a package from your OS, and run “python install” again.

I’ve lost my admin password!

It’s easy to set a new one.

  • Stop your server
  • Run ./ changepassword admin (and change your password)
  • Start your server again

error when using mod_python

mod_wsgi is recommended, but if you need mod_python this little django1.2.5 hack is needed :

  • in django.http.init: do not use “from mod_python.util import parse_qsl”

replace the lines 7 to 11 with:

from cgi import parse_qsl

Thanks to esimorre


Email templates are inspired from MailChimp’s Email-Blueprints ( We do love Mailchimp and strongly recommand it if you want a powerful mailing-list solution!

MimeTypes Icons came from Farm Fresh Free icons Collection, under Creative Commons 3.0 License. Many thanks to

Project details

Release history Release notifications

This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date (4.1 MB) Copy SHA256 hash SHA256 Source None Jan 25, 2013

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page