A framework for enterprise applications (CRM, ERP, collaboration...).
Project description
About
Abilian Core is an enterprise application development platform based on the Flask micro-framework, the SQLAlchemy ORM, good intentions and best practices (for some value of “best”).
The full documentation is available on http://docs.abilian.com/.
Goals & principles
Development must be easy and fun (some some definition of “easy” and “fun”, of course)
The less code (and configuration) we write, the better
Leverage existing reputable open source libraries and frameworks, such as SQLAlchemy and Flask
It must lower errors, bugs, project’s time to deliver. It’s intended to be a rapid application development tool
It must promote best practices in software development, specially Test-Driven Development (as advocated by the GOOS book)
Features
Here’s a short list of features that you may find appealing in Abilian:
Infrastructure
Plugin framework
Asynchronous tasks (using Celery)
Security model and service
Domain model and services
Persistent domain object model, based on SQLAlchemy
Audit
Content management and services
Simple file-based content repository
Indexing service
Document preview and transformation
User Interface and API
Forms (based on WTForms)
CRUD (Create, Retrieve, Edit/Update, Remove) interface from domain models
Labels and descriptions for each field
Various web utilities: view decorators, class-based views, Jinja2 filters, etc.
A default UI based on Bootstrap 3 and several carefully selected jQuery plugins such as Select2
REST and AJAX API helpers
i18n: support for multi-language via Babel, with multiple translation dictionaries
Management and admin
Initial settings wizard
Admin and user settings framework
System monitoring (using Sentry)
Current status
Abilian Core is currently alpha software, in terms of API stability.
It is currently used in several applications that have been developped by Abilian over the last two years:
Abilian SBE (Social Business Engine) - an enterprise 2.0 (social collaboration) platform
Abilian EMS (Event Management System)
Abilian CRM (Customer / Contact / Community Relationship Management System)
Abilian Le MOOC - a MOOC prototype
Abilian CMS - a Web CMS
In other words, Abilian Core is the foundation for a small, but growing, family of business-critical applications that our customers intend us to support in the coming years.
So while Abilian Core APIs, object model and even architecture, may (and most probably will) change due to various refactorings that are expected as we can’t be expected to ship perfect software on the firt release, we also intend to treat it as a valuable business asset and keep maintaining and improving it in the foreseeable future.
Roadmap & getting involved
If you need help or for general discussions about the Abilian Platform, we recommend joing the Abilian Users forum on Google Groups.
For features and bug requests (or is it the other way around?), we recommend that you use the GitHub issue tracker.
Read the Contributing Guide for more information.
Install
If you are a Python web developer (which is the primary target for this project), you probably already know about:
Python 3.8+
Virtualenv
Poetry (https://poetry.eustace.io/)
So, after you have created and activated a virtualenv for the project, just run:
poetry
To use some features of the library, namely document and images transformation, you will need to install the additional native packages, using our operating system’s package management tools (dpkg, yum, brew…):
A few image manipulation libraries (libpng, libjpeg)
The poppler-utils, unoconv, LibreOffice, ImageMagick utilities
Look at the fabfile.py for the exact list.
Testing
Abilian Core come with a full unit and integration testing suite. You can run it with make test (once your virtualenv has been activated and all required dependencies have been installed, see above).
Alternatively, you can use tox to run the full test suite in an isolated environment.
Licence
Abilian Core is licensed under the LGPL.
Credits
Abilian Core has been created by the development team at Abilian (currently: Stefane and Bertrand), with financial support from our wonderful customers, and R&D fundings from the French Government, the Paris Region and the European Union.
We are also specially grateful to:
Armin Ronacher for his work on Flask.
Michael Bayer for his work on SQLAlchemy.
Everyone who has been involved with and produced open source software for the Flask ecosystem (Kiran Jonnalagadda and the HasGeek team, Max Countryman, Matt Wright, Matt Good, Thomas Johansson, James Crasta, and many others).
The creators of Django, Pylons, TurboGears, Pyramid and Zope, for even more inspiration.
The whole Python community.
Links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file abilian-core-0.11.24.tar.gz
.
File metadata
- Download URL: abilian-core-0.11.24.tar.gz
- Upload date:
- Size: 4.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcae19e6f4ac030c69cebcc8e9b04bace058ce1754a738b6b0c34a50dbc9a542 |
|
MD5 | 211aec7f6cf140b9e4641a3feb17ba7b |
|
BLAKE2b-256 | 13a749e7945499a00b9e240413eff99caf7e6f29c95a764baf759a2fd1dceb9e |
File details
Details for the file abilian_core-0.11.24-py3-none-any.whl
.
File metadata
- Download URL: abilian_core-0.11.24-py3-none-any.whl
- Upload date:
- Size: 4.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfffda1dd74d0358bf07a928c21c8bffc24c2b8739cea68d8603fd57e463f8f6 |
|
MD5 | c4858302fe64dcde4ec762ff65f17926 |
|
BLAKE2b-256 | 5a5f997a210a88e3306e4c666e0b4b5efc1c3715a127731b7c33ae537ac1d8b5 |
Social
Users, groups and social graph (followers)
Activity streams