Skip to content

Commit 240ae65

Browse files
committed
new files
1 parent f518ddc commit 240ae65

40 files changed

Lines changed: 1703 additions & 0 deletions

.github/copilot-instructions.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
This is a Python and Nextflow repository for predicting whether TCRs (T-cell receptors) bind to p:MHCs (peptide:MHC complexes) using AlphaFold3. Please follow these guidelines when contributing:
2+
3+
## Code Standards
4+
5+
### Required Before Each Commit
6+
- Run `black .` from the cloned project root (using the `tcrtrifold-experiments` conda environment) before committing any changes to ensure proper code formatting
7+
- This will run black on all Python files to maintain consistent style
8+
9+
### Development Flow
10+
- Test: `./scripts/test/<script_name>.sh`
11+
12+
## Repository Structure
13+
- `data/`: Parquet files, AF3 inference outputs, and other data associated with triads (TCRs in complex with p:MHCs) and p:MHC complexes alone, organized on a per-dataset basis.
14+
- `envs/`: Conda environments for different purposes in this repo. `env_runner.yaml` is the primary package code containing the package described by 'pyproject.toml' and its dependencies, often used by nextflow pipelines kicked off using the `nf-core` environment.
15+
- `notebooks/`: Jupyter notebooks for analyzing results and making figures
16+
- `results/`: Persistent storage for outputs of jupyter notebooks
17+
- `scripts/`: Primary entrypoint for interacting with this repo. Contains slurm scripts (which should be run as bash scripts in the runner environment) that kick off the nextflow pipelines.
18+
- `src/tcrtrifold/`: The python package code used by the pipelines in this repo, organized using the "src" layout.
19+
- `workflows/`: Nextflow pipelines and their associated Python scripts for running AlphaFold3, formatting data, and extracting features.
20+
21+
## Key Guidelines
22+
1. Follow Python best practices and idiomatic patterns
23+
2. Use Numpy-style docstrings for Python methods and classes
24+
3. Maintain existing code structure and organization
25+
4. If issues are ambiguous, ask clarifying questions before attempting to solve them
26+
5. While other datasets are present in this repo, `data/test` is the dataset intended to be used by the runner environment. Pipelines should be written in a way that works on test data but is generic enough to be run on other datasets.
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: "Copilot Setup Steps"
2+
3+
# Automatically run the setup steps when they are changed to allow for easy validation, and
4+
# allow manual testing through the repository's "Actions" tab
5+
on:
6+
workflow_dispatch:
7+
push:
8+
paths:
9+
- .github/workflows/copilot-setup-steps.yml
10+
pull_request:
11+
paths:
12+
- .github/workflows/copilot-setup-steps.yml
13+
14+
jobs:
15+
16+
copilot-setup-steps:
17+
runs-on: ubuntu-latest
18+
19+
permissions:
20+
contents: read
21+
22+
steps:
23+
- name: Checkout code
24+
uses: actions/checkout@v4
25+
26+
- name: Set up Node.js
27+
uses: actions/setup-node@v4
28+
with:
29+
node-version: "20"
30+
cache: "npm"
31+
32+
# More info on options: https://github.com/conda-incubator/setup-miniconda
33+
- name: Install conda dependencies for main env
34+
uses: conda-incubator/setup-miniconda@v3
35+
with:
36+
mamba-version: "*"
37+
activate-environment: ""
38+
auto-activate-base: true
39+
show-channel-urls: true
40+
auto-update-conda: true
41+
42+
- name: Create all conda envs
43+
shell: bash -l {0}
44+
run: |
45+
mamba env create -f envs/env_runner.yaml
46+
mamba env create -f envs/nf-core.yaml

data/iedb_II_10x_neg.dvc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
outs:
2+
- md5: f1053bf1cb536168ac9f8fb8c2604f94.dir
3+
size: 1642337
4+
nfiles: 4
5+
hash: md5
6+
path: iedb_II_10x_neg

data/iedb_II_1x_neg.dvc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
outs:
2+
- md5: de5bb3f1648b04a0a1a317ba012dfece.dir
3+
size: 1062162
4+
nfiles: 4
5+
hash: md5
6+
path: iedb_II_1x_neg

data/iedb_I_10x_neg.dvc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
outs:
2+
- md5: 229528d73455624ebb98aae1f82049c7.dir
3+
size: 4299987
4+
nfiles: 3
5+
hash: md5
6+
path: iedb_I_10x_neg

data/iedb_I_1x_neg.dvc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
outs:
2+
- md5: a470b0c98f6290760cbcefb1655ab7e5.dir
3+
size: 4299740
4+
nfiles: 3
5+
hash: md5
6+
path: iedb_I_1x_neg
7.58 KB
Binary file not shown.
17 KB
Binary file not shown.
7.06 KB
Binary file not shown.
16.3 KB
Binary file not shown.

0 commit comments

Comments
 (0)