Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
2d0fa09
abstract design dev notebook
doublergreer Sep 24, 2025
7fa1272
ordering of parts + scar identification
doublergreer Oct 1, 2025
789cb74
moclo plasmid class + site verification & matching logic
doublergreer Oct 3, 2025
1380268
cleaning up notebook
doublergreer Oct 3, 2025
c009a15
notebook to file
doublergreer Oct 8, 2025
5c3d9ef
abstract design translator working in package
doublergreer Oct 8, 2025
085bb09
adapted logic for componentdefinition plasmids instead of those conta…
doublergreer Oct 8, 2025
498bd51
digest parameter type adjustment + ruff linting
doublergreer Oct 13, 2025
3d43407
package build fix
doublergreer Oct 13, 2025
78c64fb
precommit, uv, and gitignore
doublergreer Oct 14, 2025
b29beb0
docstrings and spelling fix
doublergreer Oct 14, 2025
ef5d4cf
fixed last part mismatch error
doublergreer Oct 16, 2025
12bbcae
adapting sbol2build to support new plasmid specs
doublergreer Oct 20, 2025
39e743c
tests and constants for sbol2build adjustments
doublergreer Oct 20, 2025
6c05074
added test command
doublergreer Oct 30, 2025
fd222cd
combining abstract design translation with existing sbol2build assemb…
doublergreer Oct 30, 2025
9c42721
now comparing .lower version of both sequences for finding parts
doublergreer Oct 30, 2025
36484cf
extract_toplevel_definition general implementation
doublergreer Oct 30, 2025
3dc7b08
fixes to support multi composite assembly plans
doublergreer Oct 31, 2025
6dbdae7
ligation product type: DNA region -> DNA molecule
doublergreer Oct 31, 2025
e882dee
combinatorial abstract design testing
doublergreer Nov 4, 2025
96a338e
moving notebook functions into main code
doublergreer Nov 4, 2025
76865c9
documentation
doublergreer Nov 4, 2025
0665c73
changed from set to duplicate-removed list to preserve plasmid order
doublergreer Nov 5, 2025
5785537
simple test for two design. add more soon
doublergreer Nov 5, 2025
63a4cfc
test path fix
doublergreer Nov 5, 2025
2a70103
added 3pro 3rbs test case for combinatorial design
doublergreer Nov 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@

.vscode/*.env
*.venv
.env
venv/
__pycache__/

dist/
build/
*.egg-info/
src/sbol2build.egg-info/
docs/_build/

*.pyc
*.pyo
*.pyd
*.so
*.dll
*.o
*.a

# --- Pre-commit / dependency management ---
# .pre-commit-config.yaml
# uv.lock

notebooks/tutorial_notebook.ipynb
untracked_examples/

tests/__pycache__/

.DS_Store
Thumbs.db
9 changes: 9 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.11.8
hooks:
# Ruff Linter
- id: ruff
args: [ --fix ]

- id: ruff-format
36 changes: 36 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,39 @@ It was developed to support build functionality and workflows in [SynBioSuite](h
## Documentation

Please visit the documentation with API reference and tutorials at Read the Docs: [sbol2build.rtfd.io](https://sbol2build.readthedocs.io)

## Environment Setup

If you are interested in contributing to **BuildPlanner**, please set up your local development environment with the same tools used in CI and linting.

### 1. Install [uv](https://docs.astral.sh/uv/)

`uv` manages all Python dependencies (including dev tools) with a lockfile for reproducibility.

#### Linux/Bash
```bash
curl -LsSf https://astral.sh/uv/install.sh | sh
```
#### Mac OSX with Homebrew
```bash
brew install uv
```
### 2. Sync dependencies
```bash
uv sync --all-groups
```
This will create a virtual environment with the dependiencies. Activate using:
```bash
source .venv/bin/activate
```

### 3. Install pre-commit hooks
We use pre-commit to automatically run the Ruff linter before every commit.
Install and enable the hooks with:
```bash
uv run pre-commit install
```


#### Running tests:
`uv run python -m unittest discover -s tests`
Loading