diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..85761ad29c950c3fa54a5a9a486baaddf7fa5ec4
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,45 @@
+.eggs
+
+######################
+# Logs and databases #
+######################
+*\.log
+.DS_Store
+
+#########################
+# Eclipse metadata_path #
+#########################
+\.project
+\.pydevproject
+\.settings/
+
+#############
+# vim files #
+#############
+*\.swp
+*~
+\#*\#
+
+################# 
+# pycharm files #
+#################
+\.idea
+
+#################
+# visual studio #
+#################
+\.vscode/
+
+###############################
+# jupyter notebook checkpoint #
+###############################
+\.ipynb_checkpoints/
+
+##########################
+# Python complied source #
+##########################
+*\.pyc
+*\.pyo
+build/
+dist/
+doc/_build/
diff --git a/README.md b/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..3b08a7bf7f5d5939f407a3ee48d1dac10cf20d1d
--- /dev/null
+++ b/README.md
@@ -0,0 +1,18 @@
+<!---
+
+[![Doc](https://img.shields.io/badge/doc-master-blue.svg)](http://track-analyzer.pages.pasteur.fr/track-analyzer)
+[![Open Source License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://opensource.org/licenses/GPL-3.0)
+[![PyPI](https://img.shields.io/pypi/v/track-analyzer)](https://pypi.org/project/track-analyzer/)
+![Conda](https://img.shields.io/conda/pn/bioconda/track_analyzer)
+
+-->
+
+
+# Manipylator
+A Python-driven manipulator controller
+
+**Manipylator** is Python-based controller used to run a motorized manipulator through a user-friendly graphical interface. 
+This package offers several mechanical assays to physically manipulate a sample.  
+In particular, **Manipylator** provides in real time controller to exert controlled forces through a cantilever-based force sensor and actuator. 
+
+**Manipylator** currently supports PI ([Physik Instrumente](https://www.physikinstrumente.com/en/)) motorized stages to drive the manipulator.
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000000000000000000000000000000000000..5b8357caeddc4c116596f26610aaeca6e9039596
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,14 @@
+ipyfilechooser
+ipywidgets
+jupyter
+numpy
+pandas
+matplotlib
+scikit-image
+seaborn
+pipython
+scipy
+lmfit
+simple_pid
+multiprocessing
+joblib
\ No newline at end of file
diff --git a/setup.py b/setup.py
new file mode 100644
index 0000000000000000000000000000000000000000..44f3022a8149a7ca437e0e73abef4baa5e636d90
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,61 @@
+##########################################################################
+# Manipylator - a Python-driven manipulator controller                   #
+# Authors: Arthur Michaut                                                #
+# Copyright 2020-2022 Institut Pasteur and CNRS–UMR3738                  #
+# See the COPYRIGHT file for details                                     #
+#                                                                        #
+# This file is part of manipylator package.                              #
+#                                                                        #
+# Manipylator is free software: you can redistribute it and/or modify    #
+# it under the terms of the GNU General Public License as published by   #
+# the Free Software Foundation, either version 3 of the License, or      #
+# (at your option) any later version.                                    #
+#                                                                        #
+# Manipylator is distributed in the hope that it will be useful,         #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of         #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the           #
+# GNU General Public License for more details .                          #
+#                                                                        #
+# You should have received a copy of the GNU General Public License      #
+# along with Manipylator (COPYING).                                      #
+# If not, see <https://www.gnu.org/licenses/>.                           #
+##########################################################################
+
+
+from setuptools import setup, find_packages
+
+from test_package import __version__ as tra_vers
+
+setup(name='manipylator',
+      version=tra_vers,
+      description="a Python-driven manipulator controller",
+      long_description=open('README.md').read(),
+      long_description_content_type="text/markdown",
+      author="Arthur Michaut",
+      author_email="arthur.michaut@gmail.com",
+      url="",
+      download_url="",
+      license="GPLv3",
+      classifiers=[
+          'Development Status :: 5 - Production/Stable',
+          'Environment :: Console',
+          'Operating System :: POSIX',
+          'Operating System :: Microsoft :: Windows',
+          'Programming Language :: Python :: 3',
+          'Programming Language :: Python :: 3.6',
+          'Programming Language :: Python :: 3.7',
+          'Programming Language :: Python :: 3.8',
+          'Intended Audience :: Science/Research',
+          'Topic :: Scientific/Engineering :: Bio-Informatics',
+          ],
+      python_requires='>=3.6',
+      install_requires=[i for i in [l.strip() for l in open("requirements.txt").read().split('\n')] if i],
+      # zip_safe=False,
+      packages=[p for p in find_packages() if p != 'tests'],
+      # file where some variables must be fixed by install
+      entry_points={
+          'console_scripts': [
+          ]
+      }
+      )
+