# Contributing
When updating the schema (links below), the tools need to be updated at the same time.
Schema links: EN10168 (opens new window) E-CoC (opens new window) CoA (opens new window) CDN (opens new window)
Process:
- Update the schema in question
- Generate the types (
certificate.ts) using thecreate-schema-interfacesCLI tool (npm run fixtures:interfaces) in theschema-toolsrepository - If necessary, make changes in
generateContent.tsinschema-tools/packages/generate-coa-pdf-template/src/generateContent.tsand runnpm run build. IfgenerateContent.tshas been changed and built, copy the contents ofdist/generateContent.jsto the schema repository and replace the contents ofgenerate-pdf.min.jsin the schema repository with the new minified code - For a new Release Candidate, add a new fixture (used for testing). See how to add fixtures here (opens new window)
- If there have been no changes in
certificate-model, certificate-summary, extract-emails, generate-html, generate-pdf, types, utils, validatein theschema-toolsrepository, there is no need to update theschema-toolsrelease. - If you need to edit the html generation:
- update
/packages/generate-html/src/index.tsif necessary - new handlebars helpers go in the above file in the
handlebarsBaseOptionsfunction - add any new helpers to
template.hbsin the schema repository if necessary - after making changes in a package in
schema-tools, run thebuildscript, then the rootbootstrapscript
- update
# Release state diagram

# Dependency graph
