diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
new file mode 100644
index 0000000..bf1dfa5
--- /dev/null
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,14 @@
+repos:
+- repo: https://github.com/pre-commit/pre-commit-hooks
+ rev: v4.6.0
+ hooks:
+ - id: check-ast
+ - id: check-merge-conflict
+ - id: end-of-file-fixer
+ - id: trailing-whitespace
+ args: ["--markdown-linebreak-ext=md"]
+ - id: mixed-line-ending
+- repo: https://github.com/psf/black
+ rev: 22.3.0
+ hooks:
+ - id: black
diff --git a/README.md b/README.md
index 30b5945..198bbf4 100644
--- a/README.md
+++ b/README.md
@@ -2,18 +2,17 @@
-[![Documentation Status](https://readthedocs.org/projects/faninsar/badge/?version=latest)](https://faninsar.readthedocs.io/en/latest/?badge=latest) [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.11398347.svg)](https://doi.org/10.5281/zenodo.11398347)
-
+[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.11398347.svg)](https://doi.org/10.5281/zenodo.11398347) [![Documentation Status](https://readthedocs.org/projects/faninsar/badge/?version=latest)](https://faninsar.readthedocs.io/en/latest/?badge=latest) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
FanInSAR is a Fancy Interferometric Synthetic Aperture Radar (InSAR) time series analysis library written in Python. It aims to provide a foundational library for the development of InSAR algorithms, facilitating efficient processing of InSAR time series data by offering a Pythonic, fast, and flexible approach. FanInSAR’s high-level API abstracts the complex processing pipeline and conceals the low-level programming details, enabling users to focus on algorithm development. For researchers and developers aiming to rapidly implement their own InSAR algorithms, FanInSAR offers a quick start for their projects.
## Highlight Features
-- **Pythonic**: FanInSAR is written in Python and provides a user-friendly API. Its API is designed to be simple and intuitive, by abstracting the complex processing pipeline and concealing the low-level programming details, which allows users to focus on algorithm development. For example, loading data from ``HyP3`` or ``LiCSAR`` products is as simple as providing the corresponding home directory. Filtering interferometric pairs can be performed by a time slice, similar to the ``pandas`` package.
+- **Pythonic**: FanInSAR is written in Python and provides a user-friendly API. Its API is designed to be simple and intuitive, by abstracting the complex processing pipeline and concealing the low-level programming details, which allows users to focus on algorithm development. For example, loading data from ``HyP3`` or ``LiCSAR`` products is as simple as providing the corresponding home directory. Filtering interferometric pairs can be performed by a time slice, similar to the ``pandas`` package.
- **Fast**: The core computation in FanInSAR is implemented using ``PyTorch``, a high-performance deep learning library. This allows for efficient processing on both CPU and GPU, enabling faster execution.
- **Flexible**: FanInSAR is designed to be flexible, allowing for customization and extension. Users can easily inherit classes or customize the processing pipeline for their specific needs.
-## Installation
+## Installation
FanInSAR is a Python package, and requires ``Python >= 3.8``. You can install the latest release of FanInSAR using ``pip`` from the PyPI:
@@ -32,7 +31,7 @@ pip install git+https://github.com/Fanchengyan/FanInSAR.git
The detailed documentation is available at:
> :warning: **Note**
->
+>
>FanInSAR is under active development and is currently in the alpha stage. Its API may change in the future until it reaches a stable version.
## Citation
@@ -43,7 +42,7 @@ The detailed documentation is available at:
- API Reference
+ user_guide/index
+ api/index
terminology
-
-
-
diff --git a/docs/source/user_guide/index.rst b/docs/source/user_guide/index.rst
index 4db22dd..5ff3fa4 100644
--- a/docs/source/user_guide/index.rst
+++ b/docs/source/user_guide/index.rst
@@ -1,6 +1,6 @@
-###########
+==========
User Guide
-###########
+==========
In this user guide, you will find detailed descriptions and
examples that describe many common tasks that you can accomplish with FanInSAR.
@@ -15,5 +15,3 @@ examples that describe many common tasks that you can accomplish with FanInSAR.
data_structures
Indexing_data
sampler
-
-