About
Abilian SBE (Social Business Engine) is a platform for social business applications, and more specifically collaborative / enterprise 2.0 business applications, such as enterprise social networks (ESN).
Abilian SBE revolves around the concept of communities, which are collaborative spaces with services such as lightweight document management, discussions, wikis, user timelines, etc.
It is based on the Abilian Core project which provide the basic services, on top of Flask and SQLAlchemy.
Abilian SBE is used by several major customers in production, since mid 2013.
Screenshots
Install
Prerequisites (native dependencies)
- Python 2.7,
virtualenv
,pip
- Redis
- Sqlite, or a postgresql database.
- A few image manipulation libraries (
libpng
,libjpeg
...) poppler-utils
,unoconv
,LibreOffice
,ImageMagick
.- {Less} css pre-processor
- A Java environment (JRE 1.7 for example). The closure compiler is used for minifying javascript files. You don't have to install the compiler yourself, but a Java environment is required.
Get a working application
The following commands will create a virtualenv for the application, install a script named abilian_sbe
, launch development server and open a setupwizard in your browser:
$ virtualenv sbe
$ cd sbe; source bin/activate
$ pip install -U setuptools pip
$ pip install abilian-sbe
$ python -m abilian.sbe.app setup_sbe_app
MAC OS + Homebrew
You will need to install the following packages using homebrew (before running pip install ...
):
brew install python2.7 jpeg git libmagic poppler imagemagick
Running with gunicorn
gunicorn 'abilian.sbe.app.create_app()'
Developing
Branching policy
We currently have two branches:
- master for stable version (0.3.x)
- develop for next version (0.4.devx)
Testing
Short test
Make sure all the dependencies are installed (cf. above), then run make test
.
With coverage
Run make test-with-coverage
.
Full test suite
Install tox. Run tox -e ALL
.
2 environments are available:
py27
: uses in-memory sqlite-
-
py27_postgres
: uses local postgresql server (you need to first create a -
database, and user/password; tox uses environment variables
POSTGRES_HOST
,POSTGRES_PORT
,POSTGRES_DB
,POSTGRES_USER
,POSTGRES_PASSWORD
)
-
Build Status
The project is under continuous integration with Travis and CircleCI: