TimefoldAI / TimefoldAI/timefold-solver

Feat: start.timefold.ai (Optimization project skeleton)

Open
#345 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
1.8k
Forks
228
Avg merge
1d 13h
Merged PRs (30d)
46

Description

Let's say I want to start a new optimization project. I'd probably:

  • take one of the solver examples/quickstarts as an inspiration
  • set up a maven project
  • declared solver/logging dependencies
  • set up logger
  • declared domain classes
  • added timefold annotations
  • created some dummy data
  • created a single constraint
  • created a constraint configuration class
  • created a single test using a Constraint verifier
  • created simple solver.xml with basic CH/LS, termination, solution/Entity classes, correct constraint provider references
  • created a main class to set up a SolverFactory/Solver

Suggestion:

  • Create a maven archetype / other (e.g. dummy example repository) that sets up the project skeleton. Ideally a simple java application with a main class that I can run & see some output in the log console.
  • Maybe with some explanatory comments (e.g. define your constraints here, change this to update constraint weight for this constraint, etc.).
  • Benefit - this avoids repetitive work that needs to be done everytime the developers start a new preoject.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the solver examples/quickstarts and the requested Maven project setup, including domain classes, annotations, constraints, Constraint verifier usage, and solver configuration. Done means a reusable project skeleton provides explanatory comments, a main class, and a simple application that runs and produces log output.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system, developer-experience
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.