# Update

1. Fixed a bug for checking connection with iProX


# Patpat

Patpat is public proteomics dataset search framework that
only requires protein identifiers to be passed in to search for relevant datasets

## Base Usage

Load Patpat package and create runtime environment:

```Python
from patpat import hub
from patpat import mapper
from patpat import utility

utility.init()
utility.initiate_uniprot_proteome_catalog()
```
Directory structure of the runtime environment is as follows:
```
patpat_env/
    |-- logs/
    |-- tmp/
    |-- result/
    |-- proteome/
        |-- UP_README_yyyy-mm-dd
```
Search for the peptide to be searched via the QueryHub

```python
identifier_ = 'P23950'
q = hub.QueryHub()
q.identifier = identifier_
q.simple_query()
```
Having checked that the corresponding FASTA file for *Mus musculus* does not exist locally, consider obtaining from UniProt:
```
Choose local peptide search.
The Mus musculus UP000000589 proteome file was not found locally.
Do you want to download it?(y/n)
```
Get the search configs:
```python
conf_ = q.get_query_config()
```
Set up Mappers for MapperHub, search and get results:
```python
mappers_ = [mapper.PrideMapper(), mapper.IProXMapper()]

m = hub.MapperHub(config=conf_,
                  mappers=mappers_,
                  )
m.mapping()

result_ = m.export()
```
Result files store in ```patpat_envs/result/<task_uuid>```, you can find ```<task_uuid>``` by ```m.config```

In its current version, Patpat supports both PRIDE and iProX databases. In addition, 
Patpat is an extensible framework and users are encouraged to extend it with databases of interest to Patpat or
to build their processes. 


For more information, see GitHub (https://github.com/henry-leo/Patpat). 





