Skip to content

Commit

Permalink
update docs: add black
Browse files Browse the repository at this point in the history
  • Loading branch information
Fanchengyan committed Jul 24, 2024
1 parent 7336c03 commit 9f01b8d
Show file tree
Hide file tree
Showing 8 changed files with 50 additions and 21 deletions.
14 changes: 14 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -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
12 changes: 5 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,17 @@
<img src="https://raw.githubusercontent.com/Fanchengyan/FanInSAR/main/docs/source/_static/logo/logo.svg" width="400">
</h1><br>

[![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:

Expand All @@ -32,7 +31,7 @@ pip install git+https://github.com/Fanchengyan/FanInSAR.git
The detailed documentation is available at: <https://faninsar.readthedocs.io/en/latest/>

> :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
Expand All @@ -43,7 +42,7 @@ The detailed documentation is available at: <https://faninsar.readthedocs.io/en/
@software{fan_2024_11398347,
author = {Fan, Chengyan and
Liu, Lin},
title = {{FanInSAR: A Fancy InSAR time series library, in a
title = {{FanInSAR: A Fancy InSAR time series library, in a
Pythonic, fast, and flexible way}},
month = may,
year = 2024,
Expand All @@ -53,4 +52,3 @@ The detailed documentation is available at: <https://faninsar.readthedocs.io/en/
url = {https://doi.org/10.5281/zenodo.11398347}
}
```

10 changes: 10 additions & 0 deletions docs/source/_static/custom.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
.bd-content {
flex-grow: 1;
max-width: 100%;
}
.bd-page-width {
max-width: 100rem;
}
.bd-main .bd-article-container {
max-width: 100%;
}
4 changes: 2 additions & 2 deletions docs/source/api/index.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
=============
API Reference
=============

Expand All @@ -11,5 +12,4 @@ API Reference
samplers/index
NSBAS/index
insar_class/pairs


insar_class/phase_deformation_converter
5 changes: 4 additions & 1 deletion docs/source/api/insar_class/phase_deformation_converter.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
===========================
Phase Deformation Converter
===========================


PhaseDeformationConverter
^^^^^^^^^^^^^^^^^^^^^^^^^

.. autoclass:: PhaseDeformationConverter
.. autoclass:: faninsar.PhaseDeformationConverter
:members:
:undoc-members:
:member-order: bysource
Expand Down
2 changes: 2 additions & 0 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,11 +42,13 @@

html_theme = "pydata_sphinx_theme"
html_static_path = ["_static"]
html_css_files = ["custom.css"]
html_logo = "_static/logo/logo.png"

html_theme_options = {
"show_toc_level": 2,
"show_nav_level": 2,
"header_links_before_dropdown": 10,
"use_edit_page_button": True,
"icon_links": [
{
Expand Down
18 changes: 11 additions & 7 deletions docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,17 @@
Welcome to FanInSAR's documentation!
====================================

.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.11398347.svg
:target: https://doi.org/10.5281/zenodo.11398347
:alt: DOI

.. image:: https://readthedocs.org/projects/faninsar/badge/?version=latest
:target: https://faninsar.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status

.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/psf/black

Introduction
------------

Expand All @@ -15,7 +22,7 @@ FanInSAR is a Fancy Interferometric Synthetic Aperture Radar (InSAR) time series
Highlight Features
------------------

- **Pythonic**: FanInSAR is written in Python and provides a user-friendly API. The 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. The 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.

Expand All @@ -27,7 +34,7 @@ Highlight Features
Citation
--------

.. code-block::
.. code-block::
Fan, C., & Liu, L. (2024). FanInSAR: A Fancy InSAR time series library, in a Pythonic, fast, and flexible way (0.0.1). Zenodo. https://doi.org/10.5281/zenodo.11398347
Expand All @@ -51,9 +58,6 @@ Citation
:caption: Contents:

install
User Guide <user_guide/index>
API Reference <api/index>
user_guide/index
api/index
terminology



6 changes: 2 additions & 4 deletions docs/source/user_guide/index.rst
Original file line number Diff line number Diff line change
@@ -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.
Expand All @@ -15,5 +15,3 @@ examples that describe many common tasks that you can accomplish with FanInSAR.
data_structures
Indexing_data
sampler


0 comments on commit 9f01b8d

Please sign in to comment.