diff --git a/.gitignore b/.gitignore
index 3fd4fef..91506e1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,5 @@ service-account.json
 *.pyc
 my-test*.ics
 .vscode/*
+/dist/
+/*.egg-info/
diff --git a/MANIFEST.in b/MANIFEST.in
new file mode 100644
index 0000000..346766b
--- /dev/null
+++ b/MANIFEST.in
@@ -0,0 +1,7 @@
+include pyproject.toml
+
+# Include the README
+include *.md
+
+# Include the license file
+include LICENSE
diff --git a/pyproject.toml b/pyproject.toml
new file mode 100644
index 0000000..47626ae
--- /dev/null
+++ b/pyproject.toml
@@ -0,0 +1,3 @@
+[build-system]
+requires = ["setuptools>=40.8.0", "wheel", "setuptools_scm"]
+build-backend = "setuptools.build_meta"
diff --git a/setup.cfg b/setup.cfg
new file mode 100644
index 0000000..794a149
--- /dev/null
+++ b/setup.cfg
@@ -0,0 +1,6 @@
+[metadata]
+license_files = LICENSE
+
+[options]
+setup_requires =
+  setuptools_scm
\ No newline at end of file
diff --git a/setup.py b/setup.py
new file mode 100644
index 0000000..320ba62
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,36 @@
+import setuptools
+
+with open('README.md', 'r') as fh:
+    long_description = fh.read()
+
+setuptools.setup(
+    name='sync-ics2gcal',
+    author='Dmitry Belyaev',
+    author_email='b4tm4n@mail.ru',
+    license='MIT',
+    description='Sync ics file with Google calendar',
+    long_description=long_description,
+    long_description_content_type='text/markdown',
+    url='https://github.com/b4tman/sync_ics2gcal',
+    use_scm_version=True,
+    setup_requires=['setuptools_scm'],
+    packages=setuptools.find_packages(exclude=['tests']),
+    classifiers=[
+        'License :: OSI Approved :: MIT License',
+        'Operating System :: OS Independent',
+
+        'Programming Language :: Python :: 3.5',
+        'Programming Language :: Python :: 3.6',
+        'Programming Language :: Python :: 3.7',
+        'Programming Language :: Python :: 3.8',
+    ],
+    python_requires='>=3.5',
+    install_requires = [
+        'google-auth>=1.5.0',
+        'google-api-python-client>=1.7.0',
+        'icalendar>=4.0.1',
+        'pytz',
+        'PyYAML>=3.13'
+    ],
+    scripts=['manage-calendars.py', 'sync-calendar.py']
+)
\ No newline at end of file