After 15 years of development, Dirk Lemmerman has released FlexGanttFX under AGPL to widen code access while addressing long-term project maintenance.
Dirk Lemmerman has open sourced FlexGanttFX, a resource-scheduling framework for generating Gantt charts, after 15 years of development. The release is intended to increase code availability while using the AGPL licence to address project maintenance.
FlexGanttFX is released under the GNU Affero General Public License (AGPL), making the licence a central part of its open-source model. Companies that modify the library and use it over a network must make their modified source code publicly available, even if they do not redistribute the software. This can make AGPL projects less attractive to some SaaS companies.
The licence can also support a dual-licensing model, allowing companies that do not want to comply with AGPL requirements to potentially obtain a commercial licence. The release therefore highlights the trade-off between open-source availability, project maintenance and commercial adoption.
Built on JavaFX, FlexGanttFX supports desktop and mobile applications and includes runnable demos. It combines Canvas rendering with standard JavaFX nodes to render complex charts without relying on hundreds or thousands of individual nodes.
The framework uses four primitives: rows for resources, activities for time-bounded tasks, layers for grouping and visibility, and links for dependencies. Its timeline uses java.time.Instant and supports scales from milliseconds to decades, including time zones, daylight-saving transitions, weekends and working hours.
FlexGanttFX also provides standard, chart and pool layouts, along with direct activity editing and application-defined constraints. Gantt charts can support planning across logistics, aviation, healthcare and software development.
The AGPL approach follows precedents including iText, Elastic and Grafana, while MongoDB previously moved away from AGPL.















































































