Skip to main content
Link
Search
Menu
Expand
Document
(external link)
Developer Documentation
Overview on Developing JabRef
Contributing
JabRef and Software Engineering Training
Decision Records
Use Markdown Any Decision Records
Use Crowdin for translations
Use slf4j together with log4j2 for logging
Use Gradle as build tool
Use MariaDB Connector
Fully Support UTF-8 Only For LaTeX Files
Only translated strings in language file
Provide a human-readable changelog
Use public final instead of getters to offer access to immutable variables
Use Plain JUnit5 for advanced test assertions
Use H2 as Internal SQL Database
Test external links in documentation
Handle different bibentry formats of fetchers by adding a layer
Add Native Support for BibLatex-Software
Separate URL creation to enable proper logging
Query syntax design
Mutable preferences objects
Allow org.jabref.model to access org.jabref.logic
Use regular expression to split multiple-sentence titles
Implement special fields as separate fields
Use Jackson to parse study.yml
Keep study as a DTO
Remove stop words during query transformation
Localized Preferences
Use # as indicator for BibTeX string constants
Reviewdog findings are code reviews
Use Java Native Access to Determine Default Directory
ADR Template
Getting into the code
JabRef’s development strategy
Set up a local workspace
High-level documentation
Code Howtos
The LibreOffice Panel
Overview
Order of appearance of citation groups
Problems
Code reorganization
Code Quality
Custom SVG icons
Error Handling in JabRef
Event Bus and Event System
Fetchers
JPackage: Creating a binary and debug it
JavaFX
Localization
Logging
Remote Storage
Telemetry
Testing JabRef
UI Design Recommendations
Useful development tooling
Gitter Chat
Discussion Forum
Code Repository
Code Howtos
The LibreOffice Panel
The LibreOffice Panel
Table of contents
Overview
Order of appearance of citation groups
Problems
Code reorganization