diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..997cf63
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+.venv
+__pycache__
+dist
+pdfuck.egg-info
\ No newline at end of file
diff --git a/README.en.md b/README.en.md
new file mode 100644
index 0000000..508066c
--- /dev/null
+++ b/README.en.md
@@ -0,0 +1,70 @@
+
+
+[简体中文](README.md) | [**English**](README.en.md)
+
+---
+
+## Introduction
+
+[PDFuck](https://github.com/mmdjiji/pdfuck) is a tool to remove PDF editing password, which is used in CLI (command line) mode.
+
+## Installation
+
+Before installing, please ensure that you have installed Python (>=3.0) and its matching version of pip, and then enter the following command at the command prompt:
+
+```bash
+pip install pdfuck
+```
+
+## Usage
+
+### Remove PDF password
+
+For example, if you want to remove the password from the PDF file which is located in `example.pdf`, just enter the following command:
+
+```bash
+pdfuck example.pdf
+```
+
+The default path of the output file is `example.fucked.pdf`.
+
+### Manually specify the output file path
+
+If you want to specify the path of the output file manually, you can use the `-o` parameter, for example:
+
+```bash
+pdfuck example.pdf -o target.pdf
+```
+
+### PDF file requires opening password
+
+Use the `-p` parameter to manually specify the opening password, for example:
+
+```bash
+pdfuck example.pdf -p password
+```
+
+## Credit
+
+Thanks for the following open source projects. The completion of this project is inseparable from the code contributed by these authors.
+
+* [pikepdf](https://github.com/pikepdf/pikepdf)
+
+## Workflow
+
+### Configure development environment
+
+```bash
+pip install -r requirements.txt
+```
+
+### Build and test
+
+```bash
+python -m build
+pip install --editable .
+```
+
+## License
+
+[GPL-3.0](LICENSE)
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..7c58e8d
--- /dev/null
+++ b/README.md
@@ -0,0 +1,70 @@
+
+
+[**简体中文**](README.md) | [English](README.en.md)
+
+---
+
+## 简介
+
+[PDFuck](https://github.com/mmdjiji/pdfuck) 是一个去除 PDF 编辑密码的工具,以命令行方式使用。
+
+## 安装
+
+在安装前,请确保你安装了 Python (>=3.0) 及与之版本相匹配的 pip,然后在命令提示符中输入下面的命令:
+
+```bash
+pip install pdfuck
+```
+
+## 使用
+
+### 去除 PDF 密码
+
+例如,想要去除密码的 PDF 文件位于 `example.pdf`,只需输入下面的命令:
+
+```bash
+pdfuck example.pdf
+```
+
+输出文件的默认路径为 `example.fucked.pdf`。
+
+### 手动指定输出文件路径
+
+如果想要手动指定输出文件的路径,可以使用 `-o` 参数,例如:
+
+```bash
+pdfuck example.pdf -o target.pdf
+```
+
+### PDF 文件含有打开密码
+
+使用 `-p` 参数手动指定打开密码,例如:
+
+```bash
+pdfuck example.pdf -p password
+```
+
+## 致谢
+
+感谢以下开源项目,本项目的完成离不开这些作者贡献的代码。
+
+* [pikepdf](https://github.com/pikepdf/pikepdf)
+
+## 工作流
+
+### 配置开发环境
+
+```bash
+pip install -r requirements.txt
+```
+
+### 构建与测试
+
+```bash
+python -m build
+pip install --editable .
+```
+
+## 开源协议
+
+[GPL-3.0](LICENSE)
diff --git a/assets/logo.svg b/assets/logo.svg
new file mode 100644
index 0000000..5005238
--- /dev/null
+++ b/assets/logo.svg
@@ -0,0 +1,52 @@
+
+
+
diff --git a/pdfuck.py b/pdfuck.py
new file mode 100644
index 0000000..8ff3105
--- /dev/null
+++ b/pdfuck.py
@@ -0,0 +1,38 @@
+# pdfuck.py
+# Author JiJi
+# GitHub https://github.com/mmdjiji/pdfuck
+
+import argparse
+import pikepdf
+
+def pdfuck(filepath, output, password):
+
+ # add '.fuck' sign for the output file
+ if not output:
+ splited = filepath.rsplit('.', 1)
+ prefix = splited[0]
+ output = prefix + '.fucked'
+ if(len(splited) >= 2):
+ suffix = splited[1]
+ output += '.' + suffix
+
+ try:
+ with pikepdf.open(filename_or_stream=filepath, password=password) as pdf:
+ pdf.save(filename_or_stream=output)
+ print('Decryption succeeded, saved to \'' + output + '\'')
+
+ except Exception as e:
+ print(e)
+
+def main():
+ parser = argparse.ArgumentParser(description='PDFuck: Remove the password of your PDF file')
+ parser.add_argument('filepath', metavar='', type=str, help='path of the source PDF file')
+ parser.add_argument('-o', '--output', metavar='', type=str, help='path of the target PDF file')
+ parser.add_argument('-p', '--password', metavar='', type=str, help='reading password of the source PDF file')
+ args = parser.parse_args()
+
+ filepath, output, password = args.filepath, args.output, args.password or ''
+ pdfuck(filepath=filepath, output=output, password=password)
+
+if __name__ == '__main__':
+ main()
\ No newline at end of file
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..eee2b26
Binary files /dev/null and b/requirements.txt differ
diff --git a/setup.cfg b/setup.cfg
new file mode 100644
index 0000000..562637d
--- /dev/null
+++ b/setup.cfg
@@ -0,0 +1,18 @@
+[metadata]
+name = pdfuck
+version = 1.0.0
+author = JiJi
+long_description = file: README.md
+license = GPL-3.0
+url = https://github.com/mmdjiji/pdfuck
+classifiers =
+ Programming Language :: Python :: 3
+
+[options]
+packages = find:
+install_requires =
+ pikepdf
+
+[options.entry_points]
+console_scripts =
+ pdfuck = pdfuck:main
\ No newline at end of file
diff --git a/setup.py b/setup.py
new file mode 100644
index 0000000..4b2f6c4
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,5 @@
+#!/usr/bin/env python
+#-*- coding:utf-8 -*-
+
+import setuptools
+setuptools.setup()