barcodeEZ
barcodeEZ is a Python package for designing complex, combinatorial DNA barcode libraries for molecular cloning.
The package allows design and creation of a site-aware Barcodes object. It is built around sites, expandable positions, restriction-enzyme boundaries, optimized overhangs, and optional fixed sequences. barcodeEZ draws orthogonal barcode sequence from a prebuilt corpus, assembles forward and reverse oligos, screens them for unwanted sequence content, and exports a ready-to-order oligo pool.
What it does
- Design a library structure from restriction-enzyme boundaries — use the built-in default panel or supply your own enzymes.
- Add positions within each site for combinatorial, multi-position barcoding (up to 8 positions per site), with automatically assigned optimized internal overhangs.
- Generate barcodes of any length from a corpus of ~30,000 orthogonal 60-mers shipped with the package.
- Attach fixed sequences to either end of a site.
- Validate against restriction sites and undesired motifs, automatically swapping out any contaminated barcode.
- Inspect the whole design as a pandas DataFrame.
- Export a single-stranded oligo order form as CSV.
Installation
pip install barcodeEZ
The barcode corpus ships with the package; biopython and pandas are installed automatically.
A minimal example
from barcodeEZ import Barcodes
b = Barcodes(n_sites=2) # two barcoded sites, default enzymes
b.generate_barcodes(bc_len=20, n_barcodes=96)
b.validate() # screen + replace contaminated barcodes
b.write_order_form('library.csv') # export the oligo pool
API
All functionality is accessed through the Barcodes(n_sites, custom_enzymes=None) object. Methods return self and can be chained.
| Method | Purpose |
|---|---|
add_positions(*, n_per_site) |
Add combinatorial positions per site (call before generating) |
generate_barcodes(bc_len, n_barcodes) |
Draw barcodes and assemble oligos |
add_fixed_sequence(seq, site, side) |
Attach a fixed flanking sequence to a site |
validate(ignore_defaults=False, motifs=None) |
Screen and replace barcodes containing unwanted motifs |
view() |
Return the full library as a pandas DataFrame |
write_order_form(file, metadata=False) |
Export the oligo pool as CSV; metadata=True adds site, position, and barcode columns |
print_structure() |
Print the site/enzyme layout |
See the full documentation for parameter details and examples.
Requirements
- Python ≥ 3.10
- biopython ≥ 1.81, pandas (installed automatically with pip)
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file barcodeez-1.0.0.tar.gz.
File metadata
- Download URL: barcodeez-1.0.0.tar.gz
- Upload date:
- Size: 700.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1ca4fe72c50bd0b612ef29ca78aa9ecabfa228f7155ee4b6fcf5c551ca202f2d
|
|
| MD5 |
350a6c0e66f66f5d4fd7080f8915b853
|
|
| BLAKE2b-256 |
f49c58896bb1345b379e04879a35e6591e09c12ce48b05cdc7081b0f511202f3
|
File details
Details for the file barcodeez-1.0.0-py3-none-any.whl.
File metadata
- Download URL: barcodeez-1.0.0-py3-none-any.whl
- Upload date:
- Size: 657.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c0fd7708e3885d5e389c7984ac5b16d7e09711a595994731d93bf32ffda9a14f
|
|
| MD5 |
e107338784856ed9d35a010a06dcb5c4
|
|
| BLAKE2b-256 |
6e7a3aaebb48244deac49081812bfbf8dd47f19e26c1d9e868137db5339cf8b1
|