A pairing engine: a piece of software that takes the state of a tournament - who has played whom, with which colours, on how many points - and returns the pairings for the next round according to the FIDE Swiss rules.
Inside other software, essentially always. An organizer encounters JaVaFo without ever seeing it:
The data format they exchange is TRF, the FIDE standard tournament file - which is why tournament data moves between programs at all.
These are the two engines an organizer is likely to hear about, and they solve the same problem in different ways.
| JaVaFo | bbpPairings | |
|---|---|---|
| Language | Java | C++ |
| Licence | proprietary, free to use | open source |
| Rules | FIDE Dutch | FIDE Dutch |
| Interface | file in, file out | file in, file out |
| Typical use | desktop tournament software | servers and self-hosted tools |
Because both implement the same published rules, their pairings agree in the overwhelming majority of positions. Where they differ, it is in situations the rules leave open to more than one legal solution - and either answer is correct.
Being open source, bbpPairings is the usual choice for anything self-hosted, which is why it is the engine behind the pairings in our own tools.
You will never install JaVaFo. What is worth taking away is the layer it represents.
The practical consequence for a club: use something that calls a real engine rather than pairing by hand, whatever the size of the event - running an event in the app.
A pairing engine: software that takes the state of a tournament and returns the next round's pairings according to the FIDE Dutch Swiss rules. It has no real interface - data goes in as a file and pairings come out as a file - and it works inside other tournament programs.
No. Organizers never interact with it directly; it is a component inside tournament software and online platforms. What matters is that the tool you use calls a certified engine rather than pairing by hand.
They implement the same published FIDE rules in different languages - Java and C++ - and bbpPairings is open source while JaVaFo is proprietary but free to use. Their pairings agree in almost all positions; where the rules allow more than one legal answer, either is correct.
Because the Dutch rules are long and precise, and simplified versions drift from them within two rounds, producing rematches and colour imbalances that players notice. A certified engine also gives you an answer when somebody disputes a pairing.
The FIDE standard file format for tournament data. It is what pairing engines read and write, and it is the reason an event can move between different programs instead of being locked into one.
Everything people usually keep in a spreadsheet is already in the app: pairings, points, tie-breaks, round order. Free, with no subscriptions and no cap on the number of players.
The bot is constantly improved based on real tournaments. If you need a feature that isn't there yet, message the developers right inside the bot with the /support command. Many features appeared exactly because organizers asked for them, and useful ideas get added quickly.
Software - Swiss-Manager, Vega, Chess-Results. Systems - rounds in a Swiss.