Package: abilian-core
AboutAbilian Core is an enterprise application development platform based on theFlask micro-framework, theSQLAlchemy ORM, good intentions and best practices (for some value of “best”).The full documentation is available onhttp://docs.abilian.com/.Goals & principlesDevelopment must be easy and fun (some some definition of “easy” and “fun”, of course)The less code (and configuration) we write, the betterLeverage existing reputable open source libraries and frameworks, such as SQLAlchemy and FlaskIt must lower errors, bugs, project’s time to deliver. It’s intended to be a rapid application development toolIt must promote best practices in software development, specially Test-Driven Development (as advocated by theGOOS book)FeaturesHere’s a short list of features that you may find appealing in Abilian:InfrastructurePlugin frameworkAsynchronous tasks (usingCelery)Security model and serviceDomain model and servicesPersistent domain object model, based on SQLAlchemyAuditContent management and servicesSimple file-based content repositoryIndexing serviceDocument preview and transformationSocialUsers, groups and social graph (followers)Activity streamsUser Interface and APIForms (based onWTForms)CRUD (Create, Retrieve, Edit/Update, Remove) interface from domain
modelsLabels and descriptions for each fieldVarious web utilities: view decorators, class-based views, Jinja2
filters, etc.A default UI based onBootstrap 3and
several carefully selected jQuery plugins such asSelect2REST and AJAX API helpersi18n: support for multi-language via Babel, with multiple translation
dictionariesManagement and adminInitial settings wizardAdmin and user settings frameworkSystem monitoring (usingSentry)Current statusAbilian Core is currently alpha software, in terms of API stability.It is currently used in several applications that have been developped
byAbilianover the last two years:Abilian SBE (Social Business Engine)- an enterprise 2.0
(social collaboration) platformAbilian EMS (Event Management System)Abilian CRM (Customer / Contact / Community Relationship Management
System)Abilian Le MOOC - a MOOC prototypeAbilian CMS - a Web CMSIn 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 involvedIf you need help or for general discussions about the Abilian Platform, we
recommend joing theAbilian Usersforum on Google
Groups.For features and bug requests (or is it the other way around?), we
recommend that you use theGitHub issue
tracker.Read theContributing Guidefor more information.InstallIf you are a Python web developer (which is the primary target for this
project), you probably already know about:Python 3.8+VirtualenvPoetry (https://poetry.eustace.io/)So, after you have created and activated a virtualenv for the project,
just run:poetryTo 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)Thepoppler-utils,unoconv,LibreOffice,ImageMagickutilitiesLook at thefabfile.pyfor the exact list.TestingAbilian Core come with a full unit and integration testing suite. You
can run it withmake test(once your virtualenv has been activated and
all required dependencies have been installed, see above).Alternatively, you can usetoxto run the full test suite in an
isolated environment.LicenceAbilian Core is licensed under the LGPL.CreditsAbilian 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 Ronacherfor his work on Flask.Michael Bayerfor his work on
SQLAlchemy.Everyone who has been involved with and produced open source software
for the Flask ecosystem (Kiran Jonnalagadda and theHasGeekteam, 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.LinksDiscussion list (Google Groups)DocumentationGitHub repositoryCorporate support