I'm looking around since few days on how should I build my database to support full flexible tournaments. Let me explain my specs.

As a user I want to :

  • Create a tournament
  • Let other users register
  • Generate brackets with a random limit of players or teams
  • Assign result
  • Handle winner / loser bracket
  • etc.

I believe that I am not the first one trying to achieve that kind of work and that many people are facing the same issue.

So, if anyone has some documentation, tutorial or some other knowledge to share on that matter, it would be great!

Edit: I am having trouble to find the right database config to handle Tournaments.

Tournament table

- id
- name
- player_limit
- start_date
- end_date
- etc.

PlayerBracket table

- id
- tournament_id
- player_id

Player table
- id

Starting from this, i don't know how i should make the tournament rounds or teams within the database in a proper way.

It seems like i need the right db architecture to articulate the front actions and i feel just lost about it right now...

  • 1
    First and foremost, you're going to have to be more specific on what you want from us. You're question entails a bunch of features the database is not going to provide. Creating a tournament, user registration, bracket generation, assigning results and handling outcomes are all things the front-end application would do. Writing and retrieving data for all of these features is what the database would do. A basic table for each of these features would be the basic approach. Others may be too broad and beyond the scope of the thread. – Glen Swan Mar 31 '15 at 0:43
  • @GlenSwan Hi, you right. I got lost in my explanation. I did edit the topic and i hope i made it a bit clearer :) When you say: "A basic table for each of the features..." i feel that with random number of players / random number of round and random number of player in a team it would be pretty much the mess. – C404 Mar 31 '15 at 19:29

I can see you're trying to get an end product similar to Challonge... You might guide yourself in the right direction by taking a look at their API.

Additionally in here you can find another example that can generate brackes without using a Database, also a fine starting point to start crafting your project.

Here's a jQuery library that you also should have in mind.

This Chess Tournament Crosstable Generator is a nice source of research to shape a database.

  • Hi, thanks for answering. Yeah, i looked at Challonge and it is right that i am getting very close from what they do. On the other hand, i didn't find the API doc really helping about my database architecture issue :( About your other link, it is more front libraries and my issue is more about the database itself. I ll look closely at the Chess tournament Crossable generator tho. – C404 Mar 31 '15 at 19:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.