Giter Club home page Giter Club logo

libreosteo's Introduction

LibreOsteo

https://travis-ci.com/libreosteo/Libreosteo.svg?branch=master

© Jean-Baptiste Gury 2014-2018

LibreOsteo

Libreosteo is a business application designed for osteopaths.

It manages patients, folder and runs as a work portal on a folder patient.

Browser supported :
  • Google Chrome or Chromium
  • Firefox

Please use the last version of these browsers.

You can try the online demo at http://garthylou.pythonanywhere.com login : demo password : demo

Contact

Problems or questions contact me at github

HOW-TO try it ?

Requirements :
  • Python 3.5+ (if you have no opinion, 3.6+ is the recommended choice for now)

  • pip

  • nodejs

  • yarn

  • virtualenv

  • nodejs and npm (if on Debian, you will need nodesource packages, official ones will not work)

  • if on linux system, you need linux-headers package. On debian and derivated uses

    sudo apt install linux-headers-$(uname -r)

Install system dependencies, for example, on Debian-like sytem, that would one of those two lines:

Python 3.5+

sudo apt install python3-pip virtualenv nodejs

Retrieve the content of the project from Git repository

git clone https://github.com/libreosteo/Libreosteo.git

Enter the cloned folder

cd Libreosteo

Create a virtualenv with one of those two commands.

Python 3

virtualenv --python /usr/bin/python3 venv

(at virtualenv creation you automatically entered the virtualenv, if you close the terminal, you will need to enter the virtualenv manually using source venv/bin/activate).

Then retrieve the python requirements with one of those.

Python 3

pip install -r requirements/requirements.txt

Install Javascript dependencies

yarn

Initialize the database

python manage.py migrate

Now you can start the server with

python manage.py runserver

Point your browser on : http://localhost:8000/ it will guide you towards creating the first admin user.

Have fun !

Use it in production

You can use the software in production by changing some settings.

Settings are in the folder

Libreosteo/settings/

There are some settings in this folder, the base settings is the main settings. All settings should use this base settings as reference. You can define your own base settings, but advice is to use standalone setting, and add a local.py file in this folder to define your own customization.

Setting to avoid debug trace

DEBUG = False
TEMPLATES[0]['OPTIONS']['debug'] = False

Setting for Database

For example, to define postgresql as database backend instead of sqlite3 (the default), you can use this definition.

DATABASES = {
   'default': {
            'ENGINE': 'django.db.backends.postgresql_psycopg2',
            'NAME': 'libreosteo',
            'USER': 'libreosteo',
            'PASSWORD': 'libreosteo',
            'HOST': '127.0.0.1',
            'PORT': '5432',
   }
}

You have to adapt your value with your installation, and configuration of the database used. But you can use other database backend, there is no specificity used in the software linked to the implementation of the database.

Setting for Cryptograhic key for CSRF

In order to have protection against CSRF, you have to override and change the value of SECRET_KEY, with a value computed by this script for example like this :

SECRET_KEY = "T}wf)m[?494-xG?9oO7C#3|K$Ox^!:BEJ^g3S+:&t!@pvv1oR]"

Use Http Service to provide the web application

In order to have a compliant solution to serve libreosteo, you can use Apache HTTP Server or Nginx. Details for setting these http server are not provided at this step, but you can inspire you with this article or this other one

With the software, a basic solution is provided with CherryPy which provides the ability to have Http server and WSGI implementation. Use the following script to start the server already configured to start as is. You can encapsulate the call to this script into your boot manager. This script listen on all interfaces of the host to provide the web application. The default configured port to provide the application is 8085.

./server.py

To change the default port of the server, write a file server.cfg like this (to set to 9000 in this example)

[server]
server.port = 9000

Contributing code

You are more than welcome ! Please read CONTRIBUTING.md and happy hacking !

Contributors

The libreosteo team consist of:

libreosteo's People

Contributors

jbgury avatar jocelyndelalande avatar littlejo avatar opi avatar jbg-delfingen avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.