Architectural Decisions

Architectural decisions for JabRef:

  • ADR-0000 - Use Markdown Architectural Decision Records
  • ADR-0001 - Use Crowdin for translations
  • ADR-0002 - Use slf4j together with log4j2 for logging
  • ADR-0003 - Use Gradle as build tool
  • ADR-0004 - Use MariaDB Connector
  • ADR-0005 - Fully Support UTF-8 Only For LaTeX Files
  • ADR-0006 - Only translated strings in language file
  • ADR-0007 - Provide a human-readable changelog
  • ADR-0008 - Use public final instead of getters to offer access to immutable variables
  • ADR-0009 - Use Plain JUnit5 for advanced test assertions
  • ADR-0010 - Use H2 as Internal SQL Database
  • ADR-0011 - Test external links in documentation
  • ADR-0012 - Handle different bibentry formats of fetchers by adding a layer
  • ADR-0013 - Add Native Support for BibLatex-Software
  • ADR-0014 - Separate URL creation to enable proper logging
  • ADR-0015 - Query syntax design
  • ADR-0016 - Mutable preferences objects
  • ADR-0017 - Allow org.jabref.model to access org.jabref.logic
  • ADR-0018 - Use regular expression to split multiple-sentence titles
  • ADR-0019 - Implement special fields as seperate fields
  • ADR-0020 - Use Jackson to parse study.yml
  • ADR-0021 - Keep study as a DTO

For new ADRs, please use template.md as basis. More information on the used format is available at https://adr.github.io/madr/. General information about architectural decision records is available at https://adr.github.io/. Then add them to the above list.