timefold-solver and timefold-quickstarts

The quickstarts repository provides example implementations and tutorials for getting started with the core solver library, making them complementary tools used together rather than alternatives.

timefold-solver
70
Verified
timefold-quickstarts
67
Established
Maintenance 23/25
Adoption 10/25
Maturity 16/25
Community 21/25
Maintenance 16/25
Adoption 10/25
Maturity 16/25
Community 25/25
Stars: 1,600
Forks: 185
Downloads:
Commits (30d): 40
Language: Java
License: Apache-2.0
Stars: 505
Forks: 156
Downloads:
Commits (30d): 1
Language: Java
License: Apache-2.0
No Package No Dependents
No Package No Dependents

About timefold-solver

TimefoldAI/timefold-solver

The open source Solver AI for Java and Kotlin to optimize scheduling and routing. Solve the vehicle routing problem, employee rostering, task assignment, maintenance scheduling and other planning problems.

Built on constraint programming with metaheuristic algorithms (tabu search, simulated annealing, genetic algorithms), it applies AI-driven optimization to complex combinatorial problems beyond the core use cases. Native integration with Java/Kotlin ecosystems via Maven, supporting JDK 21+ with declarative constraint configuration for domain modeling.

About timefold-quickstarts

TimefoldAI/timefold-quickstarts

Get started with Timefold quickstarts here. Optimize the vehicle routing problem, employee rostering, task assignment, maintenance scheduling and other planning problems.

Timefold Solver is a constraint satisfaction engine that uses advanced solver techniques like shadow variables, variable listeners, and bendable scoring to model complex real-world constraints beyond simple optimization. The quickstarts integrate with Java/Kotlin backends (Quarkus and Spring Boot) and include basic web UIs to demonstrate how planning solutions can be visualized and interacted with in production applications. Each example covers specific solver patterns—chained planning variables for sequencing, timeslots for scheduling, load balancing for distribution—enabling developers to learn domain-specific modeling techniques.

Scores updated daily from GitHub, PyPI, and npm data. How scores work