When reviewing a compound list containing salts, choosing a common representation gives the comparison a clear purpose. chematic lets you select standardization steps and receive the resulting structure with a report of each stage. Retaining the source SMILES in your application gives you a record of the path from input to result.
Process sodium acetate with explicit settings
Start with sodium acetate, CC(=O)[O-].[Na+]. Call standardize_smiles_report_json with largest-fragment selection and charge neutralization enabled, and explicit-hydrogen removal and tautomer canonicalization disabled. The published npm package v1.1.2 returns CC(O)=O as the resulting SMILES.
The report records changes at NeutralizeCharges and LargestFragment. Its atom counts exclude implicit hydrogens: five in the input and four in the output for this example. Your application can retain the following compact record:
input_smiles: CC(=O)[O-].[Na+]
review_smiles: CC(O)=O
settings: largest fragment + charge neutralization
changed: NeutralizeCharges, LargestFragment
Your application supplies the stored input_smiles and settings. The API returns the resulting SMILES, input and output summaries, and the per-stage report.
Inspect the changes at each stage
StandardizationReport identifies each stage, whether it was enabled, whether it changed the structure, and summaries before and after the operation. Each summary includes atom and bond counts and a structural hash. Reading steps in order shows how the settings contributed to the result.
You can use this record to rerun a batch with the same settings or explain its processing to someone else. Separate columns for the source data and the review representation also make the purpose of the table clear.
Connect input records, transformations, and validation
The previous article describes how to attach processing results to source rows. Standardization adds the chosen settings and the changes at each stage. Returning information that traces the path from input to result helps when embedding chematic in file-processing workflows and small analysis tools.
The implementation is in the standardization pipeline and report and the WASM API. The validation page explains the conditions used to check selected calculation results.