    OpenMMLab website

        HOT

    OpenMMLab platform

        TRY IT OUT

[![Documentation](https://readthedocs.org/projects/mmpose/badge/?version=latest)](https://mmpose.readthedocs.io/en/latest/?badge=latest)
[![actions](https://github.com/open-mmlab/mmpose/workflows/merge_stage_test/badge.svg)](https://github.com/open-mmlab/mmpose/actions)
[![codecov](https://codecov.io/gh/open-mmlab/mmpose/branch/latest/graph/badge.svg)](https://codecov.io/gh/open-mmlab/mmpose)
[![PyPI](https://img.shields.io/pypi/v/mmpose)](https://pypi.org/project/mmpose/)
[![LICENSE](https://img.shields.io/github/license/open-mmlab/mmpose.svg)](https://github.com/open-mmlab/mmpose/blob/main/LICENSE)
[![Average time to resolve an issue](https://isitmaintained.com/badge/resolution/open-mmlab/mmpose.svg)](https://github.com/open-mmlab/mmpose/issues)
[![Percentage of issues still open](https://isitmaintained.com/badge/open/open-mmlab/mmpose.svg)](https://github.com/open-mmlab/mmpose/issues)
[![Open in OpenXLab](https://cdn-static.openxlab.org.cn/app-center/openxlab_demo.svg)](https://openxlab.org.cn/apps?search=mmpose)

[📘Documentation](https://mmpose.readthedocs.io/en/latest/) |
[🛠Installation](https://mmpose.readthedocs.io/en/latest/installation.html) |
[👀Model Zoo](https://mmpose.readthedocs.io/en/latest/model_zoo.html) |
[📜Papers](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html) |
[🆕Update News](https://mmpose.readthedocs.io/en/latest/notes/changelog.html) |
[🤔Reporting Issues](https://github.com/open-mmlab/mmpose/issues/new/choose) |
[🔥RTMPose](/projects/rtmpose/)

## Introduction

English | [简体中文](README_CN.md)

MMPose is an open-source toolbox for pose estimation based on PyTorch.
It is a part of the [OpenMMLab project](https://github.com/open-mmlab).

The main branch works with **PyTorch 1.8+**.

https://user-images.githubusercontent.com/15977946/124654387-0fd3c500-ded1-11eb-84f6-24eeddbf4d91.mp4

Major Features

- **Support diverse tasks**

  We support a wide spectrum of mainstream pose analysis tasks in current research community, including 2d multi-person human pose estimation, 2d hand pose estimation, 2d face landmark detection, 133 keypoint whole-body human pose estimation, 3d human mesh recovery, fashion landmark detection and animal pose estimation.
  See [Demo](demo/docs/en) for more information.

- **Higher efficiency and higher accuracy**

  MMPose implements multiple state-of-the-art (SOTA) deep learning models, including both top-down & bottom-up approaches. We achieve faster training speed and higher accuracy than other popular codebases, such as [HRNet](https://github.com/leoxiaobin/deep-high-resolution-net.pytorch).
  See [benchmark.md](docs/en/notes/benchmark.md) for more information.

- **Support for various datasets**

  The toolbox directly supports multiple popular and representative datasets, COCO, AIC, MPII, MPII-TRB, OCHuman etc.
  See [dataset_zoo](docs/en/dataset_zoo) for more information.

- **Well designed, tested and documented**

  We decompose MMPose into different components and one can easily construct a customized
  pose estimation framework by combining different modules.
  We provide detailed documentation and API reference, as well as unittests.

## What's New

- Release [RTMO](/projects/rtmo), a state-of-the-art real-time method for multi-person pose estimation.

  ![rtmo](https://github.com/open-mmlab/mmpose/assets/26127467/54d5555a-23e5-4308-89d1-f0c82a6734c2)

- Release [RTMW](/configs/wholebody_2d_keypoint/rtmpose/cocktail14/rtmw_cocktail14.md) models in various sizes ranging from RTMW-m to RTMW-x. The input sizes include `256x192` and `384x288`. This provides flexibility to select the right model for different speed and accuracy requirements.

- Support inference of [PoseAnything](/projects/pose_anything). Web demo is available [here](https://openxlab.org.cn/apps/detail/orhir/Pose-Anything).

- Support for two new datasets:

  - (CVPR 2023) [ExLPose](https://mmpose.readthedocs.io/en/latest/dataset_zoo/2d_body_keypoint.html#exlpose-dataset)
  - (ICCV 2023) [H3WB](/docs/en/dataset_zoo/3d_wholebody_keypoint.md)

- Welcome to use the [*MMPose project*](/projects/README.md). Here, you can discover the latest features and algorithms in MMPose and quickly share your ideas and code implementations with the community. Adding new features to MMPose has become smoother:

  - Provides a simple and fast way to add new algorithms, features, and applications to MMPose.
  - More flexible code structure and style, fewer restrictions, and a shorter code review process.
  - Utilize the powerful capabilities of MMPose in the form of independent projects without being constrained by the code framework.
  - Newly added projects include:
    - [RTMPose](/projects/rtmpose/)
    - [RTMO](/projects/rtmo/)
    - [PoseAnything](/projects/pose_anything/)
    - [YOLOX-Pose](/projects/yolox_pose/)
    - [MMPose4AIGC](/projects/mmpose4aigc/)
    - [Simple Keypoints](/projects/skps/)
    - [Just Dance](/projects/just_dance/)
    - [Uniformer](/projects/uniformer/)
  - Start your journey as an MMPose contributor with a simple [example project](/projects/example_project/), and let's build a better MMPose together!

- January 4, 2024: MMPose [v1.3.0](https://github.com/open-mmlab/mmpose/releases/tag/v1.3.0) has been officially released, with major updates including:

  - Support for new datasets: ExLPose, H3WB
  - Release of new RTMPose series models: RTMO, RTMW
  - Support for new algorithm PoseAnything
  - Enhanced Inferencer with optional progress bar and improved affinity for one-stage methods

  Please check the complete [release notes](https://github.com/open-mmlab/mmpose/releases/tag/v1.3.0) for more details on the updates brought by MMPose v1.3.0!

## 0.x / 1.x Migration

MMPose v1.0.0 is a major update, including many API and config file changes. Currently, a part of the algorithms have been migrated to v1.0.0, and the remaining algorithms will be completed in subsequent versions. We will show the migration progress in this [Roadmap](https://github.com/open-mmlab/mmpose/issues/2258).

If your algorithm has not been migrated, you can continue to use the [0.x branch](https://github.com/open-mmlab/mmpose/tree/0.x) and [old documentation](https://mmpose.readthedocs.io/en/0.x/).

## Installation

Please refer to [installation.md](https://mmpose.readthedocs.io/en/latest/installation.html) for more detailed installation and dataset preparation.

## Getting Started

We provided a series of tutorials about the basic usage of MMPose for new users:

1. For the basic usage of MMPose:

   - [A 20-minute Tour to MMPose](https://mmpose.readthedocs.io/en/latest/guide_to_framework.html)
   - [Demos](https://mmpose.readthedocs.io/en/latest/demos.html)
   - [Inference](https://mmpose.readthedocs.io/en/latest/user_guides/inference.html)
   - [Configs](https://mmpose.readthedocs.io/en/latest/user_guides/configs.html)
   - [Prepare Datasets](https://mmpose.readthedocs.io/en/latest/user_guides/prepare_datasets.html)
   - [Train and Test](https://mmpose.readthedocs.io/en/latest/user_guides/train_and_test.html)
   - [Deployment](https://mmpose.readthedocs.io/en/latest/user_guides/how_to_deploy.html)
   - [Model Analysis](https://mmpose.readthedocs.io/en/latest/user_guides/model_analysis.html)
   - [Dataset Annotation and Preprocessing](https://mmpose.readthedocs.io/en/latest/user_guides/dataset_tools.html)

2. For developers who wish to develop based on MMPose:

   - [Learn about Codecs](https://mmpose.readthedocs.io/en/latest/advanced_guides/codecs.html)
   - [Dataflow in MMPose](https://mmpose.readthedocs.io/en/latest/advanced_guides/dataflow.html)
   - [Implement New Models](https://mmpose.readthedocs.io/en/latest/advanced_guides/implement_new_models.html)
   - [Customize Datasets](https://mmpose.readthedocs.io/en/latest/advanced_guides/customize_datasets.html)
   - [Customize Data Transforms](https://mmpose.readthedocs.io/en/latest/advanced_guides/customize_transforms.html)
   - [Customize Evaluation](https://mmpose.readthedocs.io/en/latest/advanced_guides/customize_evaluation.html)
   - [Customize Optimizer](https://mmpose.readthedocs.io/en/latest/advanced_guides/customize_optimizer.html)
   - [Customize Logging](https://mmpose.readthedocs.io/en/latest/advanced_guides/customize_logging.html)
   - [How to Deploy](https://mmpose.readthedocs.io/en/latest/user_guides/how_to_deploy.html)
   - [Model Analysis](https://mmpose.readthedocs.io/en/latest/user_guides/model_analysis.html)
   - [Migration Guide](https://mmpose.readthedocs.io/en/latest/migration.html)

3. For researchers and developers who are willing to contribute to MMPose:

   - [Contribution Guide](https://mmpose.readthedocs.io/en/latest/contribution_guide.html)

4. For some common issues, we provide a FAQ list:

   - [FAQ](https://mmpose.readthedocs.io/en/latest/faq.html)

## Model Zoo

Results and models are available in the **README.md** of each method's config directory.
A summary can be found in the [Model Zoo](https://mmpose.readthedocs.io/en/latest/model_zoo.html) page.

Supported algorithms:

- [x] [DeepPose](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#deeppose-cvpr-2014) (CVPR'2014)
- [x] [CPM](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#cpm-cvpr-2016) (CVPR'2016)
- [x] [Hourglass](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#hourglass-eccv-2016) (ECCV'2016)
- [x] [SimpleBaseline3D](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#simplebaseline3d-iccv-2017) (ICCV'2017)
- [ ] [Associative Embedding](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#associative-embedding-nips-2017) (NeurIPS'2017)
- [x] [SimpleBaseline2D](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#simplebaseline2d-eccv-2018) (ECCV'2018)
- [x] [DSNT](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#dsnt-2018) (ArXiv'2021)
- [x] [HRNet](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#hrnet-cvpr-2019) (CVPR'2019)
- [x] [IPR](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#ipr-eccv-2018) (ECCV'2018)
- [x] [VideoPose3D](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#videopose3d-cvpr-2019) (CVPR'2019)
- [x] [HRNetv2](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#hrnetv2-tpami-2019) (TPAMI'2019)
- [x] [MSPN](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#mspn-arxiv-2019) (ArXiv'2019)
- [x] [SCNet](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#scnet-cvpr-2020) (CVPR'2020)
- [ ] [HigherHRNet](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#higherhrnet-cvpr-2020) (CVPR'2020)
- [x] [RSN](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#rsn-eccv-2020) (ECCV'2020)
- [x] [InterNet](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#internet-eccv-2020) (ECCV'2020)
- [ ] [VoxelPose](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#voxelpose-eccv-2020) (ECCV'2020)
- [x] [LiteHRNet](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#litehrnet-cvpr-2021) (CVPR'2021)
- [x] [ViPNAS](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#vipnas-cvpr-2021) (CVPR'2021)
- [x] [Debias-IPR](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#debias-ipr-iccv-2021) (ICCV'2021)
- [x] [SimCC](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/algorithms.html#simcc-eccv-2022) (ECCV'2022)

Supported techniques:

- [x] [FPN](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/techniques.html#fpn-cvpr-2017) (CVPR'2017)
- [x] [FP16](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/techniques.html#fp16-arxiv-2017) (ArXiv'2017)
- [x] [Wingloss](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/techniques.html#wingloss-cvpr-2018) (CVPR'2018)
- [x] [AdaptiveWingloss](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/techniques.html#adaptivewingloss-iccv-2019) (ICCV'2019)
- [x] [DarkPose](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/techniques.html#darkpose-cvpr-2020) (CVPR'2020)
- [x] [UDP](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/techniques.html#udp-cvpr-2020) (CVPR'2020)
- [x] [Albumentations](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/techniques.html#albumentations-information-2020) (Information'2020)
- [x] [SoftWingloss](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/techniques.html#softwingloss-tip-2021) (TIP'2021)
- [x] [RLE](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/techniques.html#rle-iccv-2021) (ICCV'2021)

Supported datasets:

- [x] [AFLW](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#aflw-iccvw-2011) \[[homepage](https://www.tugraz.at/institute/icg/research/team-bischof/lrs/downloads/aflw/)\] (ICCVW'2011)
- [x] [sub-JHMDB](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#jhmdb-iccv-2013) \[[homepage](http://jhmdb.is.tue.mpg.de/dataset)\] (ICCV'2013)
- [x] [COFW](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#cofw-iccv-2013) \[[homepage](http://www.vision.caltech.edu/xpburgos/ICCV13/)\] (ICCV'2013)
- [x] [MPII](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#mpii-cvpr-2014) \[[homepage](http://human-pose.mpi-inf.mpg.de/)\] (CVPR'2014)
- [x] [Human3.6M](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#human3-6m-tpami-2014) \[[homepage](http://vision.imar.ro/human3.6m/description.php)\] (TPAMI'2014)
- [x] [COCO](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#coco-eccv-2014) \[[homepage](http://cocodataset.org/)\] (ECCV'2014)
- [x] [CMU Panoptic](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#cmu-panoptic-iccv-2015) \[[homepage](http://domedb.perception.cs.cmu.edu/)\] (ICCV'2015)
- [x] [DeepFashion](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#deepfashion-cvpr-2016) \[[homepage](http://mmlab.ie.cuhk.edu.hk/projects/DeepFashion/LandmarkDetection.html)\] (CVPR'2016)
- [x] [300W](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#300w-imavis-2016) \[[homepage](https://ibug.doc.ic.ac.uk/resources/300-W/)\] (IMAVIS'2016)
- [x] [RHD](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#rhd-iccv-2017) \[[homepage](https://lmb.informatik.uni-freiburg.de/resources/datasets/RenderedHandposeDataset.en.html)\] (ICCV'2017)
- [x] [CMU Panoptic HandDB](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#cmu-panoptic-handdb-cvpr-2017) \[[homepage](http://domedb.perception.cs.cmu.edu/handdb.html)\] (CVPR'2017)
- [x] [AI Challenger](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#ai-challenger-arxiv-2017) \[[homepage](https://github.com/AIChallenger/AI_Challenger_2017)\] (ArXiv'2017)
- [x] [MHP](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#mhp-acm-mm-2018) \[[homepage](https://lv-mhp.github.io/dataset)\] (ACM MM'2018)
- [x] [WFLW](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#wflw-cvpr-2018) \[[homepage](https://wywu.github.io/projects/LAB/WFLW.html)\] (CVPR'2018)
- [x] [PoseTrack18](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#posetrack18-cvpr-2018) \[[homepage](https://posetrack.net/users/download.php)\] (CVPR'2018)
- [x] [OCHuman](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#ochuman-cvpr-2019) \[[homepage](https://github.com/liruilong940607/OCHumanApi)\] (CVPR'2019)
- [x] [CrowdPose](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#crowdpose-cvpr-2019) \[[homepage](https://github.com/Jeff-sjtu/CrowdPose)\] (CVPR'2019)
- [x] [MPII-TRB](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#mpii-trb-iccv-2019) \[[homepage](https://github.com/kennymckormick/Triplet-Representation-of-human-Body)\] (ICCV'2019)
- [x] [FreiHand](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#freihand-iccv-2019) \[[homepage](https://lmb.informatik.uni-freiburg.de/projects/freihand/)\] (ICCV'2019)
- [x] [Animal-Pose](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#animal-pose-iccv-2019) \[[homepage](https://sites.google.com/view/animal-pose/)\] (ICCV'2019)
- [x] [OneHand10K](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#onehand10k-tcsvt-2019) \[[homepage](https://www.yangangwang.com/papers/WANG-MCC-2018-10.html)\] (TCSVT'2019)
- [x] [Vinegar Fly](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#vinegar-fly-nature-methods-2019) \[[homepage](https://github.com/jgraving/DeepPoseKit-Data)\] (Nature Methods'2019)
- [x] [Desert Locust](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#desert-locust-elife-2019) \[[homepage](https://github.com/jgraving/DeepPoseKit-Data)\] (Elife'2019)
- [x] [Grévy’s Zebra](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#grevys-zebra-elife-2019) \[[homepage](https://github.com/jgraving/DeepPoseKit-Data)\] (Elife'2019)
- [x] [ATRW](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#atrw-acm-mm-2020) \[[homepage](https://cvwc2019.github.io/challenge.html)\] (ACM MM'2020)
- [x] [Halpe](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#halpe-cvpr-2020) \[[homepage](https://github.com/Fang-Haoshu/Halpe-FullBody/)\] (CVPR'2020)
- [x] [COCO-WholeBody](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#coco-wholebody-eccv-2020) \[[homepage](https://github.com/jin-s13/COCO-WholeBody/)\] (ECCV'2020)
- [x] [MacaquePose](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#macaquepose-biorxiv-2020) \[[homepage](http://www.pri.kyoto-u.ac.jp/datasets/macaquepose/index.html)\] (bioRxiv'2020)
- [x] [InterHand2.6M](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#interhand2-6m-eccv-2020) \[[homepage](https://mks0601.github.io/InterHand2.6M/)\] (ECCV'2020)
- [x] [AP-10K](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#ap-10k-neurips-2021) \[[homepage](https://github.com/AlexTheBad/AP-10K)\] (NeurIPS'2021)
- [x] [Horse-10](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#horse-10-wacv-2021) \[[homepage](http://www.mackenziemathislab.org/horse10)\] (WACV'2021)
- [x] [Human-Art](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#human-art-cvpr-2023) \[[homepage](https://idea-research.github.io/HumanArt/)\] (CVPR'2023)
- [x] [LaPa](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#lapa-aaai-2020) \[[homepage](https://github.com/JDAI-CV/lapa-dataset)\] (AAAI'2020)
- [x] [UBody](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/datasets.html#ubody-cvpr-2023) \[[homepage](https://github.com/IDEA-Research/OSX)\] (CVPR'2023)

Supported backbones:

- [x] [AlexNet](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#alexnet-neurips-2012) (NeurIPS'2012)
- [x] [VGG](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#vgg-iclr-2015) (ICLR'2015)
- [x] [ResNet](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#resnet-cvpr-2016) (CVPR'2016)
- [x] [ResNext](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#resnext-cvpr-2017) (CVPR'2017)
- [x] [SEResNet](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#seresnet-cvpr-2018) (CVPR'2018)
- [x] [ShufflenetV1](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#shufflenetv1-cvpr-2018) (CVPR'2018)
- [x] [ShufflenetV2](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#shufflenetv2-eccv-2018) (ECCV'2018)
- [x] [MobilenetV2](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#mobilenetv2-cvpr-2018) (CVPR'2018)
- [x] [ResNetV1D](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#resnetv1d-cvpr-2019) (CVPR'2019)
- [x] [ResNeSt](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#resnest-arxiv-2020) (ArXiv'2020)
- [x] [Swin](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#swin-cvpr-2021) (CVPR'2021)
- [x] [HRFormer](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#hrformer-nips-2021) (NIPS'2021)
- [x] [PVT](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#pvt-iccv-2021) (ICCV'2021)
- [x] [PVTV2](https://mmpose.readthedocs.io/en/latest/model_zoo_papers/backbones.html#pvtv2-cvmj-2022) (CVMJ'2022)

### Model Request

We will keep up with the latest progress of the community, and support more popular algorithms and frameworks. If you have any feature requests, please feel free to leave a comment in [MMPose Roadmap](https://github.com/open-mmlab/mmpose/issues/2258).

## Contributing

We appreciate all contributions to improve MMPose. Please refer to [CONTRIBUTING.md](https://mmpose.readthedocs.io/en/latest/contribution_guide.html) for the contributing guideline.

## Acknowledgement

MMPose is an open source project that is contributed by researchers and engineers from various colleges and companies.
We appreciate all the contributors who implement their methods or add new features, as well as users who give valuable feedbacks.
We wish that the toolbox and benchmark could serve the growing research community by providing a flexible toolkit to reimplement existing methods and develop their own new models.

## Citation

If you find this project useful in your research, please consider cite:

```bibtex
@misc{mmpose2020,
    title={OpenMMLab Pose Estimation Toolbox and Benchmark},
    author={MMPose Contributors},
    howpublished = {\url{https://github.com/open-mmlab/mmpose}},
    year={2020}
}
```

## License

This project is released under the [Apache 2.0 license](LICENSE).

## Projects in OpenMMLab

- [MMEngine](https://github.com/open-mmlab/mmengine): OpenMMLab foundational library for training deep learning models.
- [MMCV](https://github.com/open-mmlab/mmcv): OpenMMLab foundational library for computer vision.
- [MMPreTrain](https://github.com/open-mmlab/mmpretrain): OpenMMLab pre-training toolbox and benchmark.
- [MMagic](https://github.com/open-mmlab/mmagic): Open**MM**Lab **A**dvanced, **G**enerative and **I**ntelligent **C**reation toolbox.
- [MMDetection](https://github.com/open-mmlab/mmdetection): OpenMMLab detection toolbox and benchmark.
- [MMDetection3D](https://github.com/open-mmlab/mmdetection3d): OpenMMLab's next-generation platform for general 3D object detection.
- [MMRotate](https://github.com/open-mmlab/mmrotate): OpenMMLab rotated object detection toolbox and benchmark.
- [MMTracking](https://github.com/open-mmlab/mmtracking): OpenMMLab video perception toolbox and benchmark.
- [MMSegmentation](https://github.com/open-mmlab/mmsegmentation): OpenMMLab semantic segmentation toolbox and benchmark.
- [MMOCR](https://github.com/open-mmlab/mmocr): OpenMMLab text detection, recognition, and understanding toolbox.
- [MMPose](https://github.com/open-mmlab/mmpose): OpenMMLab pose estimation toolbox and benchmark.
- [MMHuman3D](https://github.com/open-mmlab/mmhuman3d): OpenMMLab 3D human parametric model toolbox and benchmark.
- [MMFewShot](https://github.com/open-mmlab/mmfewshot): OpenMMLab fewshot learning toolbox and benchmark.
- [MMAction2](https://github.com/open-mmlab/mmaction2): OpenMMLab's next-generation action understanding toolbox and benchmark.
- [MMFlow](https://github.com/open-mmlab/mmflow): OpenMMLab optical flow toolbox and benchmark.
- [MMDeploy](https://github.com/open-mmlab/mmdeploy): OpenMMLab Model Deployment Framework.
- [MMRazor](https://github.com/open-mmlab/mmrazor): OpenMMLab model compression toolbox and benchmark.
- [MIM](https://github.com/open-mmlab/mim): MIM installs OpenMMLab packages.
- [Playground](https://github.com/open-mmlab/playground): A central hub for gathering and showcasing amazing projects built upon OpenMMLab.


# [Scoop](https://scoop.sh/) Directory

[![update-index](https://github.com/rasa/scoop-directory/actions/workflows/update-index.yml/badge.svg)](https://github.com/rasa/scoop-directory/actions/workflows/update-index.yml) <!--
--> [![super-linter](https://github.com/rasa/scoop-directory/actions/workflows/linter.yml/badge.svg)](https://github.com/rasa/scoop-directory/actions/workflows/linter.yml) <!--
--> [![black](https://github.com/rasa/scoop-directory/actions/workflows/black.yml/badge.svg)](https://github.com/rasa/scoop-directory/actions/workflows/black.yml) <!--
--> [![Build Status](https://ci.appveyor.com/api/projects/status/github/rasa/scoop-directory?svg=true)](https://ci.appveyor.com/project/rasa/scoop-directory "Build Status") <!--
--> [![Chat on Gitter](https://badges.gitter.im/lukesampson/scoop.svg)](https://gitter.im/lukesampson/scoop) <!--
--> [![Software License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat-square)](LICENSE) <!--
--> [![Mentioned in Awesome Scoop](https://awesome.re/mentioned-badge.svg)](https://github.com/ScoopInstaller/Awesome/blob/master/README.md "Awesome Scoop") <!--
 [![Open in Visual Studio Code](https://open.vscode.dev/badges/open-in-vscode.svg)](https://open.vscode.dev/rasa/scoop-directory)
-->

**NOTE**: [ScoopSearch](https://scoopinstaller.github.io/) is [now](https://github.com/ScoopInstaller/Scoop/issues/4627#issuecomment-1116544677) the offical search engine for Scoop as [chosen](https://github.com/ScoopInstaller/Scoop/issues/4627#issuecomment-1027175489) by the community. Please consider using it for searching. Scoop Directory will continue to be available, for the forseeable future, but development efforts will be focused on ScoopSearch.

To [search](https://rasa.github.io/scoop-directory/search) the Scoop Directory click [here](https://rasa.github.io/scoop-directory/search) (put together by [@rashil2000](https://github.com/rashil2000)).

The search index contains over 25,000 application manifests in over 900 buckets, and is updated daily at 15:00 UTC.

You can also view the full list of all discovered applications sorted by:

1. [Bucket name](https://rasa.github.io/scoop-directory/by-bucket)
2. [Apps](https://rasa.github.io/scoop-directory/by-apps)
3. [Stars](https://rasa.github.io/scoop-directory/by-stars)
4. [Forks](https://rasa.github.io/scoop-directory/by-forks)
5. [Last updated](https://rasa.github.io/scoop-directory/by-date-updated)
6. [Score](https://rasa.github.io/scoop-directory/by-score) (currently deprecated)

## Other search engines

There are several other Scoop application manifest search tools too:

### On the Web

1. [ScoopSearch](https://scoopinstaller.github.io/) searches over 152,000 application manifests in over 1,300 buckets. Maintained by the [ScoopInstaller](https://github.com/ScoopInstaller) organization. Created by [@gpailler](https://github.com/gpailler). ScoopSearch is [now](https://github.com/ScoopInstaller/Scoop/issues/4627#issuecomment-1116544677) the offical search engine for Scoop.

2. [Repology](https://repology.org/projects/?inrepo=scoop) searches the Main, Extras, Versions and Games buckets, per [here](https://repology.org/repository/scoop). Repology can also search [Chocolatey](https://repology.org/projects/?inrepo=chocolatey), [Winget](https://repology.org/projects/?inrepo=winget), [Baulk](https://repology.org/repository/baulk), and [Npackd](https://github.com/npackd/npackd)'s [stable](https://repology.org/projects/?inrepo=npackd_stable), [stable64](https://repology.org/projects/?inrepo=npackd_stable64) and [unstable](https://repology.org/projects/?inrepo=npackd_unstable) package repositories.

### Command line tools

1. [shovel.sh](https://shovel.sh/search) searches just the [known](https://github.com/mertd/shovel-data/blob/ad6133a10cd9f9f2d6e4a674542c429c5ce70209/shovel.go#L45) buckets. Created by [@mertd](https://github.com/mertd).

2. [scoop-search](https://github.com/zhoujin7/scoop-search) searches the buckets found by scoop-directory.
It works with another command-line tool, called [crawl-scoop-directory](https://github.com/zhoujin7/crawl-scoop-directory), which scans the bucket lists and compiles a [Sqlite3 database](https://github.com/zhoujin7/crawl-scoop-directory/blob/master/scoop_directory.db) which can be downloaded from [here](https://github.com/zhoujin7/crawl-scoop-directory/raw/master/scoop_directory.db).
Created by [@zhoujin7](https://github.com/zhoujin7).

3. [scoop-search](https://github.com/shilangyu/scoop-search) can be installed via `scoop install scoop-search`. It  searches the buckets installed locally via `scoop bucket add [bucketname]`. Created by [@shilangyu](https://github.com/shilangyu).

4. [scoop-search-multisource](https://github.com/plicit/scoop-search-multisource) can be installed via `scoop bucket add ygguorun https://github.com/ygguorun/scoop-bucket & scoop install scoop-search-multisource`. It  searches the buckets installed locally via `scoop bucket add [bucketname]` as well as the buckets found by scoop-directory. Created by [@plicit](https://github.com/plicit).

5. [scoop-sd](https://github.com/grisha765/scoop-search-directory) is powered by https://scoopsearch.github.io. Created by [@grisha765](https://github.com/grisha765).

## Adding buckets

If GitHub fails to discover a bucket via its search API
 function, the bucket's URL can be manually added to [include.txt](https://github.com/rasa/scoop-directory/blob/HEAD/include.txt).

## Excluding buckets <a name="notes"/>

A few buckets are excluded as they duplicate other buckets. The list of excluded buckets was [here](https://github.com/rasa/scoop-directory/blob/77b7b5713c8bdb9fb3c55aaee0f73ba00750f63f/maintenance/github-crawler.py#L44) but was migrated to [exclude.txt](https://github.com/rasa/scoop-directory/blob/HEAD/exclude.txt).

## Acknowledgment and Thanks

Many thanks to our awesome contributors:

[![Scoop Directory contributors](https://contrib.rocks/image?repo=rasa/scoop-directory "Scoop Directory contributors")](https://github.com/rasa/scoop-directory/graphs/contributors)

And many thanks to Tapan Nallan ([@tapannallan](https://github.com/tapannallan)/[@algomaniac](https://github.com/algomaniac)) for their development of [awesome-scoop](https://github.com/tapannallan/awesome-scoop) which this project started (forked) from.


Faucet
======

.. image:: https://github.com/faucetsdn/faucet/workflows/Unit%20tests/badge.svg?branch=master
    :target: https://github.com/faucetsdn/faucet/actions?query=workflow%3A%22Unit+tests%22

.. image:: https://github.com/faucetsdn/faucet/workflows/Integration%20tests/badge.svg?branch=master
    :target: https://github.com/faucetsdn/faucet/actions?query=workflow%3A%22Integration+tests%22

.. image:: https://codecov.io/gh/faucetsdn/faucet/branch/master/graph/badge.svg
    :target: https://codecov.io/gh/faucetsdn/faucet

FAUCET is an OpenFlow controller for multi table OpenFlow 1.3 switches, that implements layer 2 switching, VLANs, ACLs, and layer 3 IPv4 and IPv6 routing, static and via BGP. It is based on Waikato University's `Valve <https://github.com/wandsdn/valve>`_ and the `Ryu OpenFlow Controller <http://osrg.github.io/ryu/>`_. FAUCET's design and background is described in `ACM Queue <https://queue.acm.org/detail.cfm?id=3015763>`_.

It supports:

- OpenFlow v1.3 (multi table) switches (including optional table features), hardware and software
- Multiple datapaths and distributed switching under a single controller
- VLANs, mixed tagged/untagged ports
- ACLs matching layer 2 and layer 3 fields
- IPv4 and IPv6 routing, static and via BGP
- Policy based forwarding to offload to external NFV applications (Eg 802.1x via hostapd, DHCP to isc DHCPD)
- Port and flow statistics via Grafana
- Controller health and statistics via Prometheus
- Unit and systems tests run under GitHub workflows based on mininet and OVS

Hardware and software switch support
------------------------------------

Detailed guides for some switches are available on `readthedocs <http://docs.faucet.nz/en/latest/vendors/index.html>`_.

Faucet's design principle is to be as hardware agnostic as possible and not require Table Type Patterns. This means that Faucet expects the hardware Open Flow Agent (OFA) to hide implementation details, including which tables are best for certain matches or whether there is special support for multicast - Faucet expects the OFA to leverage the right hardware transparently.

If you are a hardware vendor wanting to support FAUCET, you need to support all the matches in `faucet/faucet_pipeline.py <faucet/faucet_pipeline.py>`_ and pass all tests.

Installation
------------

Please see the `installation guide <http://docs.faucet.nz/en/latest/installation.html>`_.

Configuration
-------------

Please see the `configuration guide <http://docs.faucet.nz/en/latest/configuration.html>`_
for documentation regarding the general configuration of faucet and the
`recipe book <http://docs.faucet.nz/en/latest/recipe_book/index.html>`_
for configuration snippets for common use cases.

Development and testing
-----------------------

Please see the `developer guide <http://docs.faucet.nz/en/latest/developer_guide.html>`_.

Getting Help
------------

We use a mailing list on google groups for announcing new versions and
communicating with users and developers:

 * `faucetsdn <https://groups.google.com/g/faucetsdn>`_

We also have the #faucet IRC channel on
`libera <https://web.libera.chat/?channels=#faucet>`_.

A few tutorial videos are available on our
`YouTube channel <https://www.youtube.com/channel/UChRZ5O2diT7QREazfQX0stQ>`_.

The
`faucet dev blog <https://www.vandervecken.com/faucet>`_
and
`faucetsdn twitter <https://twitter.com/faucetsdn>`_
are good places to keep up with the latest news about faucet.

If you find bugs, or if have feature requests, please create an issue on our
`bug tracker <https://github.com/faucetsdn/faucet/issues>`_.


|logo|

.. image:: https://img.shields.io/github/actions/workflow/status/pretalx/pretalx/tests.yml?branch=main
   :target: https://github.com/pretalx/pretalx/actions/workflows/tests.yml?query=workflow%3ATests
   :alt: Continuous integration

.. image:: https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/rixx/0ac3e4314d780e809c0164c8c329f36f/raw/covbadge.json
   :target: https://github.com/pretalx/pretalx/actions/workflows/tests.yml?query=workflow%3ATests
   :alt: Coverage

.. image:: https://img.shields.io/pypi/v/pretalx.svg?colorB=3aa57c
   :target: https://pypi.python.org/pypi/pretalx
   :alt: PyPI

.. image:: https://img.shields.io/badge/docs-passing-3aa57c
   :target: https://docs.pretalx.org/
   :alt: Documentation

.. image:: https://img.shields.io/badge/news-blog-3aa57c
   :target: https://pretalx.com/p/news/
   :alt: Website

``pretalx`` is a conference planning tool focused on providing the best
experience for organisers, speakers, reviewers, and attendees alike.  It
handles the submission process with a configurable Call for Participation, the
reviewing and selection of submissions, and the scheduling and release
handling. After the event, ``pretalx`` allows speakers to receive feedback,
upload their slides, and organisers to embed recordings.

Read our `feature list`_ on our main site to get a better idea of what
`pretalx` can do for you, but it typically involves everything you'll need to
curate submissions and contents for a conference with several tracks and
conference days.

You can host pretalx yourself, as detailed in our `administrator
documentation`_, or use our public instance at `pretalx.com`_. If you want to
use pretalx, we recommend you follow `our blog`_, where we announce new
versions and upcoming features.

📺 Look and feel
----------------

|screenshots|

Check out our `feature list`_ for more screenshots – or check the `list of
events`_ to see how pretalx looks in the wild.

pretalx is highly configurable, so you can change its appearance and behaviour
in many ways if the defaults don't fit your event. If the settings are not
enough for you, you can even write plugins of your own.

🚦 Project status
-----------------

`pretalx` is under `active development`_ and used by `many events`_. It
supports everything required for talk submission, speaker communication, and
scheduling. You can see our supported features in the `feature list`_, and our
planned features in our open issues_. `pretalx` has regular releases – you can
look at the `changelog`_ to see upcoming and past changes, and install pretalx
via PyPI_.

🔨 Contributing
---------------

Contributions to pretalx are very welcome! You can contribute observations,
bugs or feature requests via the issues. If you want to contribute changes to
pretalx, please check our `developer documentation`_ on how to set up pretalx
and get started on development. Please bear in mind that our Code of Conduct
applies to the complete contribution process.

If you are interested in plugin development, check both our documentation and
our `list of plugin ideas`_ in the project wiki.

💡 Project information
----------------------

The pretalx source code is available on `GitHub`_, where you can also find the
issue tracker. The documentation is available at `docs.pretalx.org`_, and you
can find up to date information on `our blog`_ and `Twitter`_. The pretalx
package is available via `PyPI`_.

We publish `pretalx` under the terms of the Apache License. See the LICENSE
file for further information and the complete license text. The licenses of all
dependencies are documented in the `DEPENDENCIES.rst`_ file.

The primary maintainer of this project is Tobias Kunze <r@rixx.de> (who also
runs `pretalx.com`_).  See the CONTRIBUTORS file for a list of all the awesome
folks who contributed to this project.

🧭 Users
--------

If you want to look at conferences using pretalx, head over to the wiki for a
`list of events`_. And if you use pretalx for your event, please add it to the
list (or tell us about it, and we'll add it)!

.. |logo| image:: https://raw.githubusercontent.com/pretalx/pretalx/main/assets/logo.svg
   :alt: pretalx logo
   :target: https://pretalx.com
.. |screenshots| image:: https://raw.githubusercontent.com/pretalx/pretalx/main/assets/screenshots.png
   :target: https://pretalx.com/p/features
   :alt: Screenshots of pretalx pages
.. _issues: https://github.com/pretalx/pretalx/issues/
.. _feature list: https://pretalx.com/p/features
.. _developer documentation: https://docs.pretalx.org/developer/index.html
.. _administrator documentation: https://docs.pretalx.org/administrator/index.html
.. _pretalx.com: https://pretalx.com/
.. _active development: https://github.com/pretalx/pretalx/pulse
.. _changelog: https://docs.pretalx.org/en/latest/changelog.html
.. _PyPI: https://pypi.python.org/pypi/pretalx
.. _DEPENDENCIES.rst: https://github.com/pretalx/pretalx/blob/main/DEPENDENCIES.rst
.. _list of plugin ideas: https://github.com/pretalx/pretalx/wiki/Plugin-ideas
.. _list of events: https://github.com/pretalx/pretalx/wiki/Events
.. _many events: https://github.com/pretalx/pretalx/wiki/Events
.. _our blog: https://pretalx.com/p/news/
.. _GitHub: https://github.com/pretalx/pretalx
.. _docs.pretalx.org: https://docs.pretalx.org
.. _Twitter: https://twitter.com/pretalx


# ezdxf

## Abstract

This Python package is designed to facilitate the creation and manipulation of DXF
documents, with compatibility across various DXF versions. It empowers users to
seamlessly load and edit DXF files while preserving all content, except for comments.

Any unfamiliar DXF tags encountered in the document are gracefully ignored but retained
for future modifications. This feature enables the processing of DXF documents
containing data from third-party applications without any loss of valuable information.

## Quick-Info

- `ezdxf` is a Python package to create new DXF files and read/modify/write
  existing DXF documents
- MIT-License
- the intended audience are programmers
- requires at least Python 3.9
- OS independent
- tested with CPython and pypy3
- has type annotations and passes `mypy --ignore-missing-imports -p ezdxf` successful
- additional required packages for the core package without add-ons
  - [typing_extensions](https://pypi.org/project/typing-extensions/)
  - [pyparsing](https://pypi.org/project/pyparsing/)
  - [numpy](https://pypi.org/project/numpy/)
  - [fontTools](https://pypi.org/project/fonttools/)
- read/write/new support for DXF versions: R12, R2000, R2004, R2007, R2010, R2013 and R2018
- additional read-only support for DXF versions R13/R14 (upgraded to R2000)
- additional read-only support for older DXF versions than R12 (upgraded to R12)
- read/write support for ASCII DXF and Binary DXF
- retains third-party DXF content
- optional C-extensions for CPython are included in the binary wheels, available
  on [PyPI](https://pypi.org/project/ezdxf/) for Windows, Linux and macOS
- command line script `ezdxf` to display, convert and inspect DXF files

## Included Extensions

Additional packages required for these add-ons are not automatically installed
during the *basic* setup, for more information about the setup & dependencies
visit the [documentation](https://ezdxf.mozman.at/docs/setup.html).

- The `drawing` add-on is a translation layer to send DXF data to a render backend,
  interfaces to [matplotlib](https://pypi.org/project/matplotlib/), which can export
  images as PNG, PDF or SVG, and [PyQt5](https://pypi.org/project/PyQt5/) are implemented.
- `r12writer` add-on to write basic DXF entities direct and fast into a DXF R12
  file or stream
- `iterdxf` add-on to iterate over DXF entities from the modelspace of huge DXF
  files (> 5GB) which do not fit into memory
- `Importer` add-on to import entities, blocks and table entries from another DXF document
- `dxf2code` add-on to generate Python code for DXF structures loaded from DXF
  documents as starting point for parametric DXF entity creation
- `acadctb` add-on to read/write plot style files (CTB/STB)
- `pycsg` add-on for basic Constructive Solid Geometry (CSG) modeling
- `MTextExplode` add-on for exploding MTEXT entities into single-line TEXT entities
- `text2path` add-on to convert text into outline paths
- `geo` add-on to support the [`__geo_interface__`](https://gist.github.com/sgillies/2217756)
- `meshex` for exchanging meshes with other tools as STL, OFF or OBJ files
- `openscad` add-on, an interface to [OpenSCAD](https://openscad.org)
- `odafc` add-on, an interface to the [ODA File Converter](https://www.opendesign.com/guestfiles/oda_file_converter)
  to read and write DWG files
- `hpgl2` add-on for converting HPGL/2 plot files to DXF, SVG and PDF

A simple example:

```Python
import ezdxf
from ezdxf import colors
from ezdxf.enums import TextEntityAlignment

# Create a new DXF document.
doc = ezdxf.new(dxfversion="R2010")

# Create new table entries (layers, linetypes, text styles, ...).
doc.layers.add("TEXTLAYER", color=colors.RED)

# DXF entities (LINE, TEXT, ...) reside in a layout (modelspace,
# paperspace layout or block definition).
msp = doc.modelspace()

# Add entities to a layout by factory methods: layout.add_...()
msp.add_line((0, 0), (10, 0), dxfattribs={"color": colors.YELLOW})
msp.add_text(
    "Test",
    dxfattribs={
        "layer": "TEXTLAYER"
    }).set_placement((0, 0.2), align=TextEntityAlignment.CENTER)

# Save the DXF document.
doc.saveas("test.dxf")
```

Example for the *r12writer*, which writes a simple DXF R12 file without
in-memory structures:

```Python
from random import random
from ezdxf.addons import r12writer

MAX_X_COORD = 1000
MAX_Y_COORD = 1000

with r12writer("many_circles.dxf") as doc:
    for _ in range(100000):
        doc.add_circle((MAX_X_COORD*random(), MAX_Y_COORD*random()), radius=2)
```

The r12writer supports only the ENTITIES section of a DXF R12 drawing, no HEADER,
TABLES or BLOCKS section is present, except FIXED-TABLES are written, than some
additional predefined text styles and line types are available.

## Installation

Basic installation by pip including the optional C-extensions from PyPI as
binary wheels:

    pip install ezdxf

Full installation with all dependencies (matplotlib, PySide6) for using the
drawing add-on:

    pip install ezdxf[draw]

For more information about the setup & dependencies visit the
[documentation](https://ezdxf.mozman.at/docs/setup.html).

## Command Line

Use `python -m ezdxf ...` if your shell can't find the `ezdxf` script.

Get additional help for a sub-command:

    ezdxf <cmd> -h

Preview DXF files in a graphical window:

    ezdxf view <file.dxf>

Export the modelspace of DXF files as PNG|SVG|PDF:

    ezdxf draw -o file.<png|svg|pdf> <file.dxf>

Print basic information about DXF files:

    ezdxf info <file.dxf>

Show detailed information and structures of DXF files:

    ezdxf browse <file.dxf>

Audit DXF files:

    ezdxf audit <file.dxf>

Preview and convert HPGL/2 plot files:

    ezdxf hpgl <file.plt>

## Website

https://ezdxf.mozman.at/

## Documentation

Documentation of the development version at https://ezdxf.mozman.at/docs

Documentation of the latest release at https://ezdxf.readthedocs.io/

## Knowledge Graph

The knowledge graph contains additional information beyond the documentation and is
managed by [logseq](https://logseq.com/).  The source data is included in the repository
in the folder `ezdxf/notes`.  There is also a [HTML export](https://ezdxf.mozman.at/notes/#/page/ezdxf)
on the website which gets regular updates.

## Contribution

The source code of *ezdxf* can be found at __GitHub__, target your pull requests
to the `master` branch:

https://github.com/mozman/ezdxf.git

## Feedback

Questions and feedback at __GitHub Discussions__:

https://github.com/mozman/ezdxf/discussions

Questions at __Stack Overflow__:

Post questions at [stack overflow](https://stackoverflow.com/) and use the tag `dxf` or `ezdxf`.

Issue tracker at __GitHub__:

http://github.com/mozman/ezdxf/issues

## Release Notes

The [release notes](https://ezdxf.mozman.at/notes/#/page/release%20notes) are included
in the knowledge graph.

## Changelog

The [changelog](https://ezdxf.mozman.at/notes/#/page/changelog) is included
in the knowledge graph.

## Contact

Please __always__ post questions at the [forum](https://github.com/mozman/ezdxf/discussions)
or [stack overflow](https://stackoverflow.com/) to make answers
available to other users as well.

ezdxf@mozman.at

Feedback is greatly appreciated.

Manfred


===============
drf-spectacular
===============

|build-status| |codecov| |docs| |pypi-version| |pypi-dl|

Sane and flexible `OpenAPI`_ (`3.0.3`_ & `3.1`_) schema generation for `Django REST framework`_.

This project has 3 goals:
    1. Extract as much schema information from DRF as possible.
    2. Provide flexibility to make the schema usable in the real world (not only toy examples).
    3. Generate a schema that works well with the most popular client generators.

The code is a heavily modified fork of the
`DRF OpenAPI generator <https://github.com/encode/django-rest-framework/blob/master/rest_framework/schemas/openapi.py/>`_,
which is/was lacking all of the below listed features.

Features
    - Serializers modelled as components. (arbitrary nesting and recursion supported)
    - `@extend_schema <https://drf-spectacular.readthedocs.io/en/latest/drf_spectacular.html#drf_spectacular.utils.extend_schema>`_ decorator for customization of APIView, Viewsets, function-based views, and ``@action``
        - additional parameters
        - request/response serializer override (with status codes)
        - polymorphic responses either manually with ``PolymorphicProxySerializer`` helper or via ``rest_polymorphic``'s PolymorphicSerializer)
        - ... and more customization options
    - Authentication support (DRF natives included, easily extendable)
    - Custom serializer class support (easily extendable)
    - ``SerializerMethodField()`` type via type hinting or ``@extend_schema_field``
    - i18n support
    - Tags extraction
    - Request/response/parameter examples
    - Description extraction from ``docstrings``
    - Vendor specification extensions (``x-*``) in info, operations, parameters, components, and security schemes
    - Sane fallbacks
    - Sane ``operation_id`` naming (based on path)
    - Schema serving with ``SpectacularAPIView`` (Redoc and Swagger-UI views are also available)
    - Optional input/output serializer component split
    - Callback operations
    - OpenAPI 3.1 support (via setting ``OAS_VERSION``)
    - Included support for:
        - `django-polymorphic <https://github.com/django-polymorphic/django-polymorphic>`_ / `django-rest-polymorphic <https://github.com/apirobot/django-rest-polymorphic>`_
        - `SimpleJWT <https://github.com/jazzband/djangorestframework-simplejwt>`_
        - `DjangoOAuthToolkit <https://github.com/jazzband/django-oauth-toolkit>`_
        - `djangorestframework-jwt <https://github.com/jpadilla/django-rest-framework-jwt>`_ (tested fork `drf-jwt <https://github.com/Styria-Digital/django-rest-framework-jwt>`_)
        - `dj-rest-auth <https://github.com/iMerica/dj-rest-auth>`_ (maintained fork of `django-rest-auth <https://github.com/Tivix/django-rest-auth>`_)
        - `djangorestframework-camel-case <https://github.com/vbabiy/djangorestframework-camel-case>`_ (via postprocessing hook ``camelize_serializer_fields``)
        - `django-filter <https://github.com/carltongibson/django-filter>`_
        - `drf-nested-routers <https://github.com/alanjds/drf-nested-routers>`_
        - `djangorestframework-recursive <https://github.com/heywbj/django-rest-framework-recursive>`_
        - `djangorestframework-dataclasses <https://github.com/oxan/djangorestframework-dataclasses>`_
        - `django-rest-framework-gis <https://github.com/openwisp/django-rest-framework-gis>`_
        - `Pydantic (>=2.0) <https://github.com/pydantic/pydantic>`_

For more information visit the `documentation <https://drf-spectacular.readthedocs.io/>`_.

License
-------

Provided by `T. Franzel <https://github.com/tfranzel>`_. `Licensed under 3-Clause BSD <https://github.com/tfranzel/drf-spectacular/blob/master/LICENSE>`_.

Requirements
------------

-  Python >= 3.7
-  Django (2.2, 3.2, 4.0, 4.1, 4.2, 5.0)
-  Django REST Framework (3.10.3, 3.11, 3.12, 3.13, 3.14, 3.15)

Installation
------------

Install using ``pip``\ ...

.. code:: bash

    $ pip install drf-spectacular

then add drf-spectacular to installed apps in ``settings.py``

.. code:: python

    INSTALLED_APPS = [
        # ALL YOUR APPS
        'drf_spectacular',
    ]

and finally register our spectacular AutoSchema with DRF.

.. code:: python

    REST_FRAMEWORK = {
        # YOUR SETTINGS
        'DEFAULT_SCHEMA_CLASS': 'drf_spectacular.openapi.AutoSchema',
    }

drf-spectacular ships with sane `default settings <https://drf-spectacular.readthedocs.io/en/latest/settings.html>`_
that should work reasonably well out of the box. It is not necessary to
specify any settings, but we recommend to specify at least some metadata.

.. code:: python

    SPECTACULAR_SETTINGS = {
        'TITLE': 'Your Project API',
        'DESCRIPTION': 'Your project description',
        'VERSION': '1.0.0',
        'SERVE_INCLUDE_SCHEMA': False,
        # OTHER SETTINGS
    }

.. _self-contained-ui-installation:

Self-contained UI installation
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Certain environments have no direct access to the internet and as such are unable
to retrieve Swagger UI or Redoc from CDNs. `drf-spectacular-sidecar`_ provides
these static files as a separate optional package. Usage is as follows:

.. code:: bash

    $ pip install drf-spectacular[sidecar]

.. code:: python

    INSTALLED_APPS = [
        # ALL YOUR APPS
        'drf_spectacular',
        'drf_spectacular_sidecar',  # required for Django collectstatic discovery
    ]
    SPECTACULAR_SETTINGS = {
        'SWAGGER_UI_DIST': 'SIDECAR',  # shorthand to use the sidecar instead
        'SWAGGER_UI_FAVICON_HREF': 'SIDECAR',
        'REDOC_DIST': 'SIDECAR',
        # OTHER SETTINGS
    }

Release management
^^^^^^^^^^^^^^^^^^

*drf-spectacular* deliberately stays below version *1.x.x* to signal that every
new version may potentially break you. For production we strongly recommend pinning the
version and inspecting a schema diff on update.

With that said, we aim to be extremely defensive w.r.t. breaking API changes. However,
we also acknowledge the fact that even slight schema changes may break your toolchain,
as any existing bug may somehow also be used as a feature.

We define version increments with the following semantics. *y-stream* increments may contain
potentially breaking changes to both API and schema. *z-stream* increments will never break the
API and may only contain schema changes that should have a low chance of breaking you.

Take it for a spin
------------------

Generate your schema with the CLI:

.. code:: bash

    $ ./manage.py spectacular --color --file schema.yml
    $ docker run -p 80:8080 -e SWAGGER_JSON=/schema.yml -v ${PWD}/schema.yml:/schema.yml swaggerapi/swagger-ui

If you also want to validate your schema add the ``--validate`` flag. Or serve your schema directly
from your API. We also provide convenience wrappers for ``swagger-ui`` or ``redoc``.

.. code:: python

    from drf_spectacular.views import SpectacularAPIView, SpectacularRedocView, SpectacularSwaggerView
    urlpatterns = [
        # YOUR PATTERNS
        path('api/schema/', SpectacularAPIView.as_view(), name='schema'),
        # Optional UI:
        path('api/schema/swagger-ui/', SpectacularSwaggerView.as_view(url_name='schema'), name='swagger-ui'),
        path('api/schema/redoc/', SpectacularRedocView.as_view(url_name='schema'), name='redoc'),
    ]

Usage
-----

*drf-spectacular* works pretty well out of the box. You might also want to set some metadata for your API.
Just create a ``SPECTACULAR_SETTINGS`` dictionary in your ``settings.py`` and override the defaults.
Have a look at the `available settings <https://drf-spectacular.readthedocs.io/en/latest/settings.html>`_.

The toy examples do not cover your cases? No problem, you can heavily customize how your schema will be rendered.

Customization by using ``@extend_schema``
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Most customization cases should be covered by the ``extend_schema`` decorator. We usually get
pretty far with specifying ``OpenApiParameter`` and splitting request/response serializers, but
the sky is the limit.

.. code:: python

    from drf_spectacular.utils import extend_schema, OpenApiParameter, OpenApiExample
    from drf_spectacular.types import OpenApiTypes

    class AlbumViewset(viewset.ModelViewset):
        serializer_class = AlbumSerializer

        @extend_schema(
            request=AlbumCreationSerializer,
            responses={201: AlbumSerializer},
        )
        def create(self, request):
            # your non-standard behaviour
            return super().create(request)

        @extend_schema(
            # extra parameters added to the schema
            parameters=[
                OpenApiParameter(name='artist', description='Filter by artist', required=False, type=str),
                OpenApiParameter(
                    name='release',
                    type=OpenApiTypes.DATE,
                    location=OpenApiParameter.QUERY,
                    description='Filter by release date',
                    examples=[
                        OpenApiExample(
                            'Example 1',
                            summary='short optional summary',
                            description='longer description',
                            value='1993-08-23'
                        ),
                        ...
                    ],
                ),
            ],
            # override default docstring extraction
            description='More descriptive text',
            # provide Authentication class that deviates from the views default
            auth=None,
            # change the auto-generated operation name
            operation_id=None,
            # or even completely override what AutoSchema would generate. Provide raw Open API spec as Dict.
            operation=None,
            # attach request/response examples to the operation.
            examples=[
                OpenApiExample(
                    'Example 1',
                    description='longer description',
                    value=...
                ),
                ...
            ],
        )
        def list(self, request):
            # your non-standard behaviour
            return super().list(request)

        @extend_schema(
            request=AlbumLikeSerializer,
            responses={204: None},
            methods=["POST"]
        )
        @extend_schema(description='Override a specific method', methods=["GET"])
        @action(detail=True, methods=['post', 'get'])
        def set_password(self, request, pk=None):
            # your action behaviour
            ...

More customization
^^^^^^^^^^^^^^^^^^

Still not satisfied? You want more! We still got you covered.
Visit `customization <https://drf-spectacular.readthedocs.io/en/latest/customization.html>`_ for more information.

Testing
-------

Install testing requirements.

.. code:: bash

    $ pip install -r requirements.txt

Run with runtests.

.. code:: bash

    $ ./runtests.py

You can also use the excellent `tox`_ testing tool to run the tests
against all supported versions of Python and Django. Install tox
globally, and then simply run:

.. code:: bash

    $ tox

.. _Django REST framework: https://www.django-rest-framework.org/
.. _OpenAPI: https://swagger.io/
.. _3.0.3: https://spec.openapis.org/oas/v3.0.3
.. _3.1: https://spec.openapis.org/oas/v3.1.0
.. _tox: https://tox.wiki/
.. _drf-spectacular-sidecar: https://github.com/tfranzel/drf-spectacular-sidecar

.. |build-status| image:: https://github.com/tfranzel/drf-spectacular/actions/workflows/ci.yml/badge.svg
   :target: https://github.com/tfranzel/drf-spectacular/actions/workflows/ci.yml
.. |pypi-version| image:: https://img.shields.io/pypi/v/drf-spectacular.svg
   :target: https://pypi.org/project/drf-spectacular/
.. |codecov| image:: https://codecov.io/gh/tfranzel/drf-spectacular/branch/master/graph/badge.svg
   :target: https://codecov.io/gh/tfranzel/drf-spectacular
.. |docs| image:: https://readthedocs.org/projects/drf-spectacular/badge/
   :target: https://drf-spectacular.readthedocs.io/
.. |pypi-dl| image:: https://img.shields.io/pypi/dm/drf-spectacular
   :target: https://pypi.org/project/drf-spectacular/


Conan Center Index is the source index of recipes of the [ConanCenter](https://conan.io/center) package repository for [Conan](https://conan.io).

This repository includes a Continuous Integration system that will build automatically the Conan packages for the recipes submitted via
[Pull Request](https://github.com/conan-io/conan-center-index/pulls).

### Server Status

The current Conan Center Index CI status can be found on https://status.conan.io/

Any maintenance, outage or important event related to the CI will be informed there.

### Add ConanCenter remote

ConanCenter remote is configured by default in any Conan client installation. If, for any reason, you need to add it manually, just execute:

```
conan remote add conancenter https://center.conan.io
```

### How to consume recipes

Starting to use recipes from this repository is as easy as running
one simple command after installing Conan:

```
conan install name/version@ [-g <generator>]
```

Of course, we really encourage you to use a `conanfile.txt` or `conanfile.py`
to list all the requirements or your project and install them all together
(Conan will build a single graph and ensure congruency).

:warning: It is very important to notice that recipes will evolve over time
and, while they are fixing some issues, they might introduce new features and
improvements, and your project can break if you upgrade them
([How to prevent these breaking changes in my project?](docs/consuming_recipes.md)).

### Documentation

All the documentation is available in this same repository in the [`docs/` subfolder](docs/README.md).

This is a list of shortcuts to some interesting topics:

* :rocket: If you want to learn how to **contribute new recipes**, please read [docs/adding_packages/](docs/adding_packages/README.md).
* :speech_balloon: **FAQ**: most common questions are listed in [docs/faqs.md](docs/faqs.md).
* :warning: The conan-center **hook errors** reported by CCI Bot can be found in the [docs/error_knowledge_base.md](docs/error_knowledge_base.md).
* :hammer_and_wrench: The internal changes related to infrastructure can be checked in [docs/changelog.md](docs/changelog.md).
* :world_map: There are various community lead initiatives which are outlined in [docs/community_resources.md](docs/community_resources.md).
* :magic_wand: To start preparing your recipes for **Conan 2.0**, please check [docs/v2_migration.md](docs/v2_migration.md).

### Reporting Issues

You can open issues in the [issue tracker](https://github.com/conan-io/conan-center-index/issues) to:

* :bug: Report **bugs/issues** in a package:
    - Use the `[package]` tag in the title of the issue to help identifying them.
    - If you detect any issue or missing feature in a package, for example, a build failure or a recipe that not support a specific configuration.
    - Specify the name and version (`zlib/1.2.11`) and any relevant details about the fail configuration: Applied profile, building machine...

* :bulb: Request a **new library** to be added:
    - Use the `[request]` label to search the library in the issue tracker in case it was already requested.
    - If not, use the same `[request]` tag in the title of the issue to help identifying them.
    - Indicate the name and the version of the library you would like to have in the repository. Also links to the project's website,
      source download/repository and in general any relevant information that helps creating a recipe for it.

*  :robot: Report **a failure** in the CI system:
    - If you open a Pull Request and get an unexpected error you might comment in the failing PR.
    - If the service or repository is down or failing, use the `[service]` tag in the title of a new issue to help identifying them.

If your issue is not appropriate for a public discussion, please contact us via e-mail at `info@conan.io`. Thanks!

### License

All the Conan recipes in this repository are distributed under the [MIT](LICENSE) license. There
are other files, like patches or examples used to test the packages, that could use different licenses,
for those files specific license and credit must be checked in the file itself.


.. image:: https://raw.github.com/simpeg/simpeg/main/docs/images/simpeg-logo.png
    :alt: simpeg Logo

SimPEG
******

.. image:: https://img.shields.io/pypi/v/simpeg.svg
    :target: https://pypi.python.org/pypi/simpeg
    :alt: Latest PyPI version

.. image:: https://img.shields.io/conda/v/conda-forge/simpeg.svg
    :target: https://anaconda.org/conda-forge/simpeg
    :alt: Latest conda-forge version

.. image:: https://img.shields.io/github/license/simpeg/simpeg.svg
    :target: https://github.com/simpeg/simpeg/blob/main/LICENSE
    :alt: MIT license

.. image:: https://dev.azure.com/simpeg/simpeg/_apis/build/status/simpeg.simpeg?branchName=main
    :target: https://dev.azure.com/simpeg/simpeg/_build/latest?definitionId=2&branchName=main
    :alt: Azure pipeline

.. image:: https://codecov.io/gh/simpeg/simpeg/branch/main/graph/badge.svg
    :target: https://codecov.io/gh/simpeg/simpeg
    :alt: Coverage status

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

.. image:: https://img.shields.io/discourse/users?server=http%3A%2F%2Fsimpeg.discourse.group%2F
    :target: https://simpeg.discourse.group/

.. image:: https://img.shields.io/badge/simpeg-purple?logo=mattermost&label=Mattermost
    :target: https://mattermost.softwareunderground.org/simpeg

.. image:: https://img.shields.io/badge/Youtube%20channel-GeoSci.xyz-FF0000.svg?logo=youtube
    :target: https://www.youtube.com/channel/UCBrC4M8_S4GXhyHht7FyQqw

Simulation and Parameter Estimation in Geophysics  -  A python package for simulation and gradient based parameter estimation in the context of geophysical applications.

The vision is to create a package for finite volume simulation with applications to geophysical imaging and subsurface flow. To enable the understanding of the many different components, this package has the following features:

* modular with respect to the spacial discretization, optimization routine, and geophysical problem
* built with the inverse problem in mind
* provides a framework for geophysical and hydrogeologic problems
* supports 1D, 2D and 3D problems
* designed for large-scale inversions

You are welcome to join our forum and engage with people who use and develop SimPEG at: https://simpeg.discourse.group/.

Weekly meetings are open to all. They are generally held on Wednesdays at 10:30am PDT. Please see the calendar (`GCAL <https://calendar.google.com/calendar/b/0?cid=ZHVhamYzMWlibThycWdkZXM5NTdoYXV2MnNAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbQ>`_, `ICAL <https://calendar.google.com/calendar/ical/duajf31ibm8rqgdes957hauv2s%40group.calendar.google.com/public/basic.ics>`_) for information on the next meeting.

Overview Video
==============

.. image:: https://img.youtube.com/vi/yUm01YsS9hQ/0.jpg
    :target: https://www.youtube.com/watch?v=yUm01YsS9hQ
    :alt: All of the Geophysics But Backwards

Working towards all the Geophysics, but Backwards - SciPy 2016

Citing SimPEG
=============

There is a paper about SimPEG!

    Cockett, R., Kang, S., Heagy, L. J., Pidlisecky, A., & Oldenburg, D. W. (2015). SimPEG: An open source framework for simulation and gradient based parameter estimation in geophysical applications. Computers & Geosciences.

**BibTex:**

.. code::

    @article{cockett2015simpeg,
      title={SimPEG: An open source framework for simulation and gradient based parameter estimation in geophysical applications},
      author={Cockett, Rowan and Kang, Seogi and Heagy, Lindsey J and Pidlisecky, Adam and Oldenburg, Douglas W},
      journal={Computers \& Geosciences},
      year={2015},
      publisher={Elsevier}
    }

Electromagnetics
----------------

If you are using the electromagnetics module of SimPEG, please cite:

    Lindsey J. Heagy, Rowan Cockett, Seogi Kang, Gudni K. Rosenkjaer, Douglas W. Oldenburg, A framework for simulation and inversion in electromagnetics, Computers & Geosciences, Volume 107, 2017, Pages 1-19, ISSN 0098-3004, http://dx.doi.org/10.1016/j.cageo.2017.06.018.

**BibTex:**

.. code::

    @article{heagy2017,
        title= "A framework for simulation and inversion in electromagnetics",
        author= "Lindsey J. Heagy and Rowan Cockett and Seogi Kang and Gudni K. Rosenkjaer and Douglas W. Oldenburg",
        journal= "Computers & Geosciences",
        volume = "107",
        pages = "1 - 19",
        year = "2017",
        note = "",
        issn = "0098-3004",
        doi = "http://dx.doi.org/10.1016/j.cageo.2017.06.018"
    }

Questions
=========

If you have a question regarding a specific use of SimPEG, the fastest way
to get a response is by posting on our Discourse discussion forum:
https://simpeg.discourse.group/. Alternatively, if you prefer real-time chat,
you can join our Mattermost Team at
https://mattermost.softwareunderground.org/simpeg.
Please do not create an issue to ask a question.

Meetings
========

SimPEG hosts weekly meetings for users to interact with each other,
for developers to discuss upcoming changes to the code base, and for
discussing topics related to geophysics in general.
Currently our meetings are held every Wednesday, alternating between
a mornings (10:30 am pacific time) and afternoons (3:00 pm pacific time)
on even numbered Wednesdays. Find more info on our
`Mattermost <https://mattermost.softwareunderground.org/simpeg>`_.

Links
=====

Website:
https://simpeg.xyz

Forums:
https://simpeg.discourse.group/

Mattermost (real time chat):
https://mattermost.softwareunderground.org/simpeg

Documentation:
https://docs.simpeg.xyz

Code:
https://github.com/simpeg/simpeg

Tests:
https://dev.azure.com/simpeg/simpeg/_build

Bugs & Issues:
https://github.com/simpeg/simpeg/issues

Contributing
============

We always welcome contributions towards SimPEG whether they are adding
new code, suggesting improvements to existing codes, identifying bugs,
providing examples, or anything that will improve SimPEG.
Please checkout the `contributing guide <https://docs.simpeg.xyz/content/getting_started/contributing/index.html>`_
for more information on how to contribute.


# chia-blockchain

[![Chia Network logo][logo-chia]][link-chia]

| Releases | Repo Stats | Socials |
| -------- | ---------- | ------- |
[![Latest Release][badge-release]][link-latest]
 [![Latest RC][badge-rc]][link-release]
 [![Latest Beta][badge-beta]][link-release] | [![Coverage][badge-coverage]][link-coverage]
 [![Downloads][badge-downloads]][link-downloads]
 [![Commits][badge-commits]][link-commits]
 [![Contributers][badge-contributers]][link-contributers] | [![Discord][badge-discord]][link-discord]
 [![YouTube][badge-youtube]][link-youtube]
 [![Reddit][badge-reddit]][link-reddit]
 [![Twitter][badge-twitter]][link-twitter]

Chia is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure. Here are some of the features and benefits:
* [Proof of space and time][link-consensus] based consensus which allows anyone to farm with commodity hardware
* Very easy to use full node and farmer GUI and cli (thousands of nodes active on mainnet)
* [Chia seeder][link-seeder], which maintains a list of reliable nodes within the Chia network via a built-in DNS server.
* Simplified UTXO based transaction model, with small on-chain state
* Lisp-style Turing-complete functional [programming language][link-chialisp] for money related use cases
* BLS keys and aggregate signatures (only one signature per block)
* [Pooling protocol][link-pool] that allows farmers to have control of making blocks
* Support for light clients with fast, objective syncing
* A growing community of farmers and developers around the world

Please check out the [Chia website][link-chia], the [Intro to Chia][link-intro], and [FAQ][link-faq] for information on this project.

Python 3.8.1+ is required. Make sure your default python version is >=3.8.1 by typing `python3`.

If you are behind a NAT, it can be difficult for peers outside your subnet to reach you when they start up. You can enable [UPnP][link-upnp]
on your router or add a NAT (for IPv4 but not IPv6) and firewall rules to allow TCP port 8444 access to your peer.
These methods tend to be router make/model specific.

Most users should only install harvesters, farmers, plotter, full nodes, and wallets.
Setting up a seeder is best left to more advanced users.
Building Timelords and VDFs is for sophisticated users, in most environments.
Chia Network and additional volunteers are running sufficient Timelords for consensus.

## Installing

Install instructions are available in the [Installation Details][link-install] section of the [Chia Docs][link-docs].

## Running

Once installed, an [Intro to Chia][link-intro] guide is available in the [Chia Docs][link-docs].

[badge-beta]:         https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fdownload.chia.net%2Flatest%2Fbadge-data-beta.json&query=%24.message&logo=chianetwork&logoColor=black&label=Latest%20Beta&labelColor=%23e9fbbc&color=%231e2b2e
[badge-beta2]:        https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fdownload.chia.net%2Flatest%2Fbadge-data-beta.json&query=%24.message&logo=chianetwork&logoColor=%23e9fbbc&label=Latest%20Beta&labelColor=%23474748&color=%231e2b2e&link=https%3A%2F%2Fgithub.com%2FChia-Network%2Fchia-blockchain%2Freleases&link=https%3A%2F%2Fgithub.com%2FChia-Network%2Fchia-blockchain%2Freleases
[badge-commits]:      https://img.shields.io/github/commit-activity/w/Chia-Network/chia-blockchain?logo=GitHub
[badge-contributers]: https://img.shields.io/github/contributors/Chia-Network/chia-blockchain?logo=GitHub
[badge-coverage]:     https://img.shields.io/coverallsCoverage/github/Chia-Network/chia-blockchain?logo=Coveralls&logoColor=red&labelColor=%23212F39
[badge-discord]:      https://dcbadge.vercel.app/api/server/chia?style=flat-square&theme=full-presence
[badge-discord2]:     https://img.shields.io/discord/1034523881404370984.svg?label=Discord&logo=discord&colorB=1e2b2f
[badge-downloads]:    https://img.shields.io/github/downloads/Chia-Network/chia-blockchain/total?logo=GitHub
[badge-rc]:           https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fdownload.chia.net%2Flatest%2Fbadge-data-rc.json&query=%24.message&logo=chianetwork&logoColor=white&label=Latest%20RC&labelColor=%230d3349&color=%23474748
[badge-reddit]:       https://img.shields.io/reddit/subreddit-subscribers/chia?style=flat-square&logo=reddit&labelColor=%230b1416&color=%23222222
[badge-release]:      https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fdownload.chia.net%2Flatest%2Fbadge-data.json&query=%24.message&logo=chianetwork&label=Latest%20Release&labelColor=%231e2b2e&color=%230d3349
[badge-twitter]:      https://img.shields.io/twitter/follow/chia_project?style=flat-square&logo=x.org&logoColor=white&labelColor=black
[badge-youtube]:      https://img.shields.io/youtube/channel/subscribers/UChFkJ3OAUvnHZdiQISWdWPA?style=flat-square&logo=youtube&logoColor=%23ff0000&labelColor=%230f0f0f&color=%23272727

[link-chia]:          https://www.chia.net/
[link-chialisp]:      https://chialisp.com/
[link-commits]:       https://github.com/Chia-Network/chia-blockchain/commits/main/
[link-consensus]:     https://docs.chia.net/consensus-intro/
[link-contributers]:  https://github.com/Chia-Network/chia-blockchain/graphs/contributors
[link-coverage]:      https://coveralls.io/github/Chia-Network/chia-blockchain
[link-discord]:       https://discord.gg/chia
[link-docs]:          https://docs.chia.net/docs-home/
[link-downloads]:     https://www.chia.net/downloads/
[link-faq]:           https://docs.chia.net/faq/
[link-install]:       https://docs.chia.net/installation/
[link-intro]:         https://docs.chia.net/introduction/
[link-latest]:        https://github.com/Chia-Network/chia-blockchain/releases/latest
[link-pool]:          https://docs.chia.net/pool-farming/
[link-reddit]:        https://www.reddit.com/r/chia/
[link-release]:       https://github.com/Chia-Network/chia-blockchain/releases
[link-seeder]:        https://docs.chia.net/guides/seeder-user-guide/
[link-twitter]:       https://twitter.com/chia_project
[link-upnp]:          https://www.homenethowto.com/ports-and-nat/upnp-automatic-port-forward/
[link-youtube]:       https://www.youtube.com/chianetwork

[logo-chia]:          https://www.chia.net/wp-content/uploads/2022/09/chia-logo.svg "Chia logo"