Skip to content

Latest commit

 

History

History
23 lines (18 loc) · 1.3 KB

File metadata and controls

23 lines (18 loc) · 1.3 KB

Contributing

  1. Create a virtual environment and install python -m pip install -e '.[dev]'.
  2. Add a focused test for every conversion or residue template change.
  3. Run ruff check . and pytest before opening a pull request.
  4. Document structural conventions, charge state, stereochemistry, and a primary reference for each new modification.
  5. Do not map a mass shift or ambiguous name to a structure without an explicit resolution rule.

Adding modifications

Use a JSON registry first for laboratory- or project-specific chemistry; see docs/modifications.md. A modification belongs in the built-in registry only when it has a stable controlled-vocabulary or primary-literature reference and a broadly useful structural interpretation.

Built-in proposals must document residue/terminus specificity, attachment semantics, formal charge, tautomer and stereochemical choices. Include RDKit sanitization plus formula or exact-mass tests. Aliases that resemble controlled-vocabulary accessions must be site-aware and traceable to the corresponding record. Never silently replace an existing definition.

Bug reports should include the exact input, requested formats, full error, Python version, and output of moltranscode --version. Never include confidential structures in a public issue.