diff --git a/setup.cfg b/setup.cfg
new file mode 100644
index 0000000000000000000000000000000000000000..735f7e0cbac2186b9903bfe3325295b1a2873111
--- /dev/null
+++ b/setup.cfg
@@ -0,0 +1,30 @@
+[tool:pytest]
+testpaths = skais
+addopts = --verbose
+          --cov-report=term-missing
+          --cov-report=html
+          --cov=skais
+          --doctest-modules
+
+[coverage:run]
+branch = True
+source = skais
+include = */skais/*
+omit = */tests/*
+
+[coverage:report]
+exclude_lines =
+    pragma: no cover
+    if self.debug:
+    if settings.DEBUG
+    raise AssertionError
+    raise NotImplementedError
+    if 0:
+    if __name__ == .__main__.:
+    if obj is None: return
+    if verbose > 0:
+    if self.verbose > 0:
+    if verbose > 1:
+    if self.verbose > 1:
+    pass
+    def __str__(self):
diff --git a/setup.py b/setup.py
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..f92fc917e87c8f11a6dc42ad6f563c4d0969df1c 100644
--- a/setup.py
+++ b/setup.py
@@ -0,0 +1,95 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+import os
+from setuptools import setup, find_packages
+import sys
+
+NAME = 'skais'
+DESCRIPTION = 'Machine learning on AIS by Searoutes and LIS, PhD by R. Sturgis'
+LICENSE = 'GNU General Public License v3 (GPLv3)'
+URL = 'https://gitlab.lis-lab.fr/raphael.sturgis/skais/{}'.format(NAME)
+AUTHOR = 'Raphael Sturgis, Valentin Emiya'
+AUTHOR_EMAIL = 'raphael.sturgis@lis-lab.fr, valentin.emiya@lis-lab.fr'
+INSTALL_REQUIRES = []
+CLASSIFIERS = [
+    'Development Status :: 5 - Production/Stable',
+    'Intended Audience :: Developers',
+    'Intended Audience :: End Users/Desktop',
+    'Intended Audience :: Science/Research',
+    'Topic :: Scientific/Engineering :: Mathematics',
+    'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
+    'Natural Language :: English',
+    'Operating System :: MacOS :: MacOS X ',
+    'Operating System :: POSIX :: Linux',
+    'Programming Language :: Python :: 3.6',
+    'Programming Language :: Python :: 3.7',
+    'Programming Language :: Python :: 3.8',
+    'Programming Language :: Python :: 3.9']
+PYTHON_REQUIRES = '>=3.6'
+EXTRAS_REQUIRE = {
+    'dev': ['coverage', 'pytest', 'pytest-cov', 'pytest-randomly'],
+    'doc': ['nbsphinx', 'numpydoc', 'sphinx']}
+PROJECT_URLS = {'Bug Reports': URL + '/issues',
+                'Source': URL}
+KEYWORDS = 'AIS'
+
+###############################################################################
+if sys.argv[-1] == 'setup.py':
+    print("To install, run 'python setup.py install'\n")
+
+if sys.version_info[:2] < (3, 6):
+    errmsg = '{} requires Python 3.6 or later ({}.{} detected).'
+    sys_version = sys.version_info
+    print(errmsg.format(NAME, sys_version[0], sys_version[1]))
+    sys.exit(-1)
+
+
+def get_version():
+    v_text = open('VERSION').read().strip()
+    v_text_formted = '{"' + v_text.replace('\n', '","').replace(':', '":"')
+    v_text_formted += '"}'
+    v_dict = eval(v_text_formted)
+    return v_dict[NAME]
+
+
+def set_version(path, VERSION):
+    filename = os.path.join(path, '__init__.py')
+    buf = ""
+    for line in open(filename, "rb"):
+        if not line.decode("utf8").startswith("__version__ ="):
+            buf += line.decode("utf8")
+    f = open(filename, "wb")
+    f.write(buf.encode("utf8"))
+    f.write(('__version__ = "%s"\n' % VERSION).encode("utf8"))
+
+
+def setup_package():
+    """Setup function"""
+    # set version
+    VERSION = get_version()
+
+    here = os.path.abspath(os.path.dirname(__file__))
+    with open(os.path.join(here, 'README.rst'), encoding='utf-8') as f:
+        long_description = f.read()
+
+    mod_dir = NAME
+    set_version(mod_dir, get_version())
+    setup(name=NAME,
+          version=VERSION,
+          description=DESCRIPTION,
+          long_description=long_description,
+          url=URL,
+          author=AUTHOR,
+          author_email=AUTHOR_EMAIL,
+          license=LICENSE,
+          classifiers=CLASSIFIERS,
+          keywords=KEYWORDS,
+          packages=find_packages(exclude=['doc', 'dev']),
+          install_requires=INSTALL_REQUIRES,
+          python_requires=PYTHON_REQUIRES,
+          extras_require=EXTRAS_REQUIRE,
+          project_urls=PROJECT_URLS)
+
+
+if __name__ == "__main__":
+    setup_package()
\ No newline at end of file