This repository has been archived by the owner on Feb 15, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
License
HybirdCorp/creme_crm-2.1
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
WARNING : The "2.1" series is not supported anymore. You should upgrade to "2.2": https://github.com/HybirdCorp/creme_crm Creme is a free/open-source Customer Relationship Management software developed by Hybird (www.hybird.org). It is designed with an entities/relationships architecture, and is highly configurable, which allows to adapt Creme to many different work-flows. It provides apps (ie: modules) to manage: - Contacts & organisations. - Documents & folders. - Activities (meetings, phone calls, tasks...) with a calendar. - Products & services. - Invoices, quotes, sales orders & credit notes. - Opportunities. - Commercial actions. - Email campaigns. - Reports. - Tickets. - Alerts, todos & memos. - Geolocation. - ... Creme has powerful tools to filter, search or import data ; it can also be used a CRM framework you can use to code your own CRM. Creme is coded in Python, and uses the Django web framework (http://www.djangoproject.com/) and the JQuery javascript library (http://jquery.com/). You can find more information on Creme on its official web site: http://cremecrm.com/ RECOMMENDATIONS: It's recommended to use a database engine which supports transactions : - PostGreSQL is probably the best choice for data-bases with 100,000+ entities. - SQLite support is principally done for developers, but it remains a solution for small data-bases (eg: a use as mono-user app with the server running of your computer). You probably should use 'virtualenv' (for an upgrade from Creme 1.8, you should create a new virtual env, in order to keep the old one working). DEPENDENCIES: - Python 3.5+ - MySQL 5.7+ or PostGreSQL 9.5+ (or SQLite which is included with Python) - A web server compatible with Python, like Apache 2.4 - Redis 3+ - Java >= 1.4 (only needed to build the compressed version of CSS and JavaScript files at installation time) - These python packages : (exact versions of Python packages are indicated in the files 'creme/requirements*.txt') - Mandatory : - Django 2.2 - redis 3.3 - python-dateutil 2.8 - bleach 3.1 - Pillow 7/8 - django-formtools 2.1 - Optional : - creme.creme_core: - xlrd (to import contacts and organisations from xls files) - xlwt (to export contacts and organisations as xls files) - creme.billing: - pdflatex (if you want PDF export -- you'll need 'Latex' too) - creme.graphs: - pygraphviz 1.5 (seems unavailable on windows -- you'll need 'graphviz' too) - creme.crudity: - lcab (if you want Infopath forms exports and your server doesn't run on Windows) Installation with 'pip': - You should probably use "virtualenv" (on a Python >= 3.5). - About DB server : - If you use MySQL, you can use the file 'creme/requirements-mysql.txt' to install all the libraries needed by a classical installation with the command : >> pip install -r creme/requirements-mysql.txt - For PostGreSQL, use 'creme/requirements-pgsql.txt' instead. - For SQLite, just use 'creme/requirements.txt' instead (see RECOMMENDATIONS). - Notice some of these python packages need system libraries to be installed. For example, here a list of Debian/Ubuntu packages you'll have to install before: - python-dev - mysql_config & libmysqlclient-dev (or libpq-dev if you want to use PostGreSQL) - redis-server - libxslt1-dev - default-jre - libjpeg-dev - graphviz & graphviz-dev (if you want the optional app 'graphs') INSTALL: Global remarks: - You should know how to install/deploy a Django application. - Upgrade note: if you already have a Creme installation, upgrade the version one by one (eg: do not try to upgrade from 1.7 to 2.0, upgrade to 1.8 and then 2.0). Database configuration: For a new install, you have to create a new database & a new DB user (who is allowed to create/drop tables, indices...). For an upgrade from Creme 2.0, duplicate your existing DB. Settings: See the file creme/settings.py and set your parameters in a new file called 'creme/local_settings.py'. Here the minimal information you must fill : # -*- coding: utf-8 -*- DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # NB: 'django.db.backends.postgresql' for PGSQL 'NAME': 'name_of_your_db', # <== TO BE REPLACED 'USER': 'name_of_your_user', # <== TO BE REPLACED 'PASSWORD': 'password_of_the_user', # <== TO BE REPLACED 'HOST': '', # Leave empty for localhost. 'PORT': '', # Leave empty for default port. }, } # SECRET_KEY = '' # <== TO BE FILLED & UN-COMMENTED (see below). LANGUAGE_CODE = 'en' # Also available : 'fr' TIME_ZONE = 'Europe/Paris' # See http://en.wikipedia.org/wiki/List_of_tz_zones_by_name To generate the value of SECRET_KEY, run the following command in the root directory & copy its result: >> python manage.py build_secret_key You can chose precisely the creme apps you want, by copying INSTALLED_CREME_APPS & commenting the unwanted apps ; beware to only comment app in the 'optional' section, & respect the dependencies which are indicated. The information from the section "EMAILS [internal]" of 'settings.py' should be overridden in your 'local_settings.py' if you want that your users receive e-mails from Creme (ToDos, Alerts...). But these information can be filled/changed later. For an upgrade from Creme 2.0 : - Copy the file local_settings.py of your existing install : - do not forget to change NAME in order to use your duplicated DB. - do not remove apps in INSTALLED_CREME_APPS now (because they are installed in your DB) ; complete you installation & then un-install apps you do not want any more (see below). - Copy the sub-folders (& their content of course) of the folder creme/media/upload from your existing install to the one of your new install (if you did not use the app documents your may have nothing to copy). Filling the DB tables: Run the following commands in the root directory: >> python manage.py migrate >> python manage.py generatemedia >> python manage.py creme_populate If you are upgrading from Creme 2.0, clean all existing sessions, for example like this: >> python manage.py shell > from django.contrib.sessions.models import Session > Session.objects.all().delete() Note for MySQL users: you should load the time zone tables. - On Unix servers, it can be done with: >> mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql - For Windows environment, see https://stackoverflow.com/questions/14454304/convert-tz-returns-null LAUNCH: To run the development server, you just have to run this command: >> python manage.py runserver You can then go to http://localhost:8000 & log in with root/root. For a production deployment (Apache, Nginx...), you should read https://docs.djangoproject.com/en/1.11/howto/deployment/ In order to use the job system (eg: sending emails campaign, CSV import...), run the job manager too: >> python manage.py creme_job_manager UNINSTALL APPS: When you have a working installation, & want to remove an (optional) app, use the command 'creme_uninstall' which will clean the DB. When it's done, you can comment the app in local_settings.py
About
No description, website, or topics provided.
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published