diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 7aaa48355573d989a51843d0f2b83aa429b887f2..0000000000000000000000000000000000000000
--- a/.travis.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-language: python
-python: 2.7
-env:
-    - TOXENV=py27
-    - TOXENV=py33
-    - TOXENV=py34
-install:
-    - pip install tox
-script:
-    - tox
-
-deploy:
-    provider: pypi
-    user: tom-mi
-    password:
-        secure: pektL3VPgW25izjJRUm2b2jR+eAFtVDWFn6+64XaDomy979dMHLcINql4c4Pli7gmCvOiyNjRwVRX5PCPn0kEewFJyV2LMwTkBwWmShaBLgwHb4B8Q2p1/LhYGqh1c1Y7l1PdTechmChHsYdqKdbQ0oiAwYVspwcufD4bh5FDPaw1Mwgz0eCWMDl69DMVldUQfcRpMRIFzwcabW/7/a9Qm22akW4M+cdkFBRSOikK0XqO1ugkLdBaKScfDzl4OHz2S8GpeZMMvDRuEXcruRbcy8/44Iq4zE4m0a6RfFkPG5LmYz2DPjSYikm3a/5K367vhDGqWaC1FS+ZOVVFIVcvYBs6koOeuoQWIgjQSc1ILkIGakRe2a0C468PNHbvflp7MosAg16NcROKQVkQS/Xh0j/ckTSYALUMlo7MeOvl5Df7jsTtG7rDnFLOZSetFDJ0R3J60oQn0Tp1WSJNOjycwqtvwfoECNAp9GBwwmJtURt35PvJ8UTpqA6vFQiL82krX5khF2gnlNxot8QDJGa2hZO1/BiyTQ2MzKAsvQ9bx6MmsUEmDUeipCTpz2uXT298yWEHZypeNvQuTyW4Om53X2GjeNWkqGCHdA2vhqt1kqDMYaJUe2B0HsBIAxIR2XnsOMoBDm5j37D34MH15wVU6LBv1olVMHkBErUvUJmLZY=
-    on:
-        condition: $TOXENV == py27
-        tags: true
-        repo: tom-mi/python-mkp
-    distributions: bdist_wheel
-
-before_deploy:
-    # FIXME: Remove pandoc backport when ci version is sufficient
-    - sudo add-apt-repository -y ppa:marutter/c2d4u
-    - sudo apt-get update -qq
-    - sudo apt-get install -y pandoc
-    - pip install pypandoc
diff --git a/Pipfile b/Pipfile
new file mode 100644
index 0000000000000000000000000000000000000000..9c8242a78e8dbc4520b61c79a5ee25f11f07c146
--- /dev/null
+++ b/Pipfile
@@ -0,0 +1,11 @@
+[[source]]
+name = "pypi"
+url = "https://pypi.org/simple"
+verify_ssl = true
+
+[dev-packages]
+pytest = "*"
+wheel = "*"
+
+[packages]
+mkp = {editable = true, path = "."}
diff --git a/Pipfile.lock b/Pipfile.lock
new file mode 100644
index 0000000000000000000000000000000000000000..c6b152b8a8caae5218d4f876c539068c30605482
--- /dev/null
+++ b/Pipfile.lock
@@ -0,0 +1,103 @@
+{
+    "_meta": {
+        "hash": {
+            "sha256": "205489fffe8b422928c9dd960cdd605fba38a6c89de4402a82d332914577b86e"
+        },
+        "pipfile-spec": 6,
+        "requires": {},
+        "sources": [
+            {
+                "name": "pypi",
+                "url": "https://pypi.org/simple",
+                "verify_ssl": true
+            }
+        ]
+    },
+    "default": {
+        "mkp": {
+            "editable": true,
+            "path": "."
+        }
+    },
+    "develop": {
+        "attrs": {
+            "hashes": [
+                "sha256:31b2eced602aa8423c2aea9c76a724617ed67cf9513173fd3a4f03e3a929c7e6",
+                "sha256:832aa3cde19744e49938b91fea06d69ecb9e649c93ba974535d08ad92164f700"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==20.3.0"
+        },
+        "iniconfig": {
+            "hashes": [
+                "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3",
+                "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"
+            ],
+            "version": "==1.1.1"
+        },
+        "packaging": {
+            "hashes": [
+                "sha256:4357f74f47b9c12db93624a82154e9b120fa8293699949152b22065d556079f8",
+                "sha256:998416ba6962ae7fbd6596850b80e17859a5753ba17c32284f67bfff33784181"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==20.4"
+        },
+        "pluggy": {
+            "hashes": [
+                "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0",
+                "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==0.13.1"
+        },
+        "py": {
+            "hashes": [
+                "sha256:366389d1db726cd2fcfc79732e75410e5fe4d31db13692115529d34069a043c2",
+                "sha256:9ca6883ce56b4e8da7e79ac18787889fa5206c79dcc67fb065376cd2fe03f342"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==1.9.0"
+        },
+        "pyparsing": {
+            "hashes": [
+                "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1",
+                "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"
+            ],
+            "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==2.4.7"
+        },
+        "pytest": {
+            "hashes": [
+                "sha256:4288fed0d9153d9646bfcdf0c0428197dba1ecb27a33bb6e031d002fa88653fe",
+                "sha256:c0a7e94a8cdbc5422a51ccdad8e6f1024795939cc89159a0ae7f0b316ad3823e"
+            ],
+            "index": "pypi",
+            "version": "==6.1.2"
+        },
+        "six": {
+            "hashes": [
+                "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259",
+                "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced"
+            ],
+            "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==1.15.0"
+        },
+        "toml": {
+            "hashes": [
+                "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b",
+                "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"
+            ],
+            "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'",
+            "version": "==0.10.2"
+        },
+        "wheel": {
+            "hashes": [
+                "sha256:497add53525d16c173c2c1c733b8f655510e909ea78cc0e29d374243544b77a2",
+                "sha256:99a22d87add3f634ff917310a3d87e499f19e663413a52eb9232c447aa646c9f"
+            ],
+            "index": "pypi",
+            "version": "==0.35.1"
+        }
+    }
+}
diff --git a/dev-requirements.txt b/dev-requirements.txt
deleted file mode 100644
index c60ed72ba885c082be65b82c740eadf0c423a792..0000000000000000000000000000000000000000
--- a/dev-requirements.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-pytest
-pytest-cov
-pytest-flakes
-pytest-pep8
-wheel
diff --git a/tox.ini b/tox.ini
index f9763e4bdad37efc2de412e3ce42709d60a0e786..52bf996df9b79bb83c0ebdba16661172788860ec 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,10 +1,8 @@
 [tox]
-envlist = py27, py33, py34
+envlist = py27, py33, py34, py35, py36, py37, py38
 
 [testenv]
-deps = -rdev-requirements.txt
-commands = py.test {posargs} --cov={envsitepackagesdir}/mkp
-
-[pytest]
-pep8maxlinelength = 119
-addopts = --cache-clear --pep8 --flakes
+deps =
+    pytest
+commands=
+    pytest