TEXT

Bingo Game Creator

Contributed by manuelmiras@gmail.com

Improved by Laravel Company · 2026-09-07

Improved prompt:

Design a comprehensive bingo game interface and functionality for desktop or mobile devices.

Gameplay Overview:

  • The game should generate and display a 5x5 bingo card with numbers ranging from 1 to 90.
  • Each card must contain unique numbers within the specified range.
  • Numbers should be distributed across the card as follows: first column (1-9), second column (10-19), third column (20-29), fourth column (30-39), fifth column (40-45).

Interface Requirements:

  1. Game Area: Display the bingo card with numbers in 5 rows and 5 columns. Use distinct colors for each row to aid visual tracking.
  2. Controls:
    • Speed Selector: Implement a slider or drop-down menu to adjust the speed of number announcements (slow, medium, fast).
    • Volume Control: Include a volume slider to regulate the audio announcements.
    • Number Recall: Provide two buttons—one for "Recall Current Number" and another for "Recall Previous Number".
    • Game Reset: Add buttons for "New Game" and "Restart Current Game".
    • Pause/Resume: Implement a toggle button to pause and resume the game.
    • Line Check: Include a "Check Line" button that pauses the game, expects a user-provided card code, and validates if the current drawn numbers form a complete horizontal, vertical, or diagonal line on that card.
    • Bingo Check: Provide a "Check Bingo" button that pauses the game, expects a user-provided card code, and validates if all 15 numbers on the card have been called.
  3. Card Loading:
    • Allow users to load pre-generated cards from a CSV file using a unique card code.
    • Implement manual entry of each 5x5 card with a unique code.
    • Store loaded cards for future use.

Game Logic:

  • Generate unique random numbers between 1 and 90 for each game session.
  • Ensure no number repetition within a single game.
  • Maintain a consistent order of number drawing across all loaded cards.

User Experience:

  • Ensure the interface is intuitive and easy to navigate for both experienced and novice bingo players.
  • Provide clear visual and audio feedback for each number draw, line check, and bingo check.
  • Optimize the design for various screen sizes on desktop and mobile platforms.

Constraints:

  1. The game must be fully functional on both desktop and mobile browsers.
  2. The total file size of the game (HTML, CSS, JavaScript, and associated media) should not exceed 2MB for optimal loading speed.
  3. The game should be able to run smoothly on devices with limited resources, such as older smartphones or lower-end computers.
  4. The design should be visually appealing and consistent with a modern aesthetic.

Please provide a detailed description or mockup of the interface, including the placement and appearance of each element, as well as a high-level overview of the required backend and frontend components.

Original prompt (before our improvements)

Crea un juego de bingo. Los números van del 1 al 90. Options: - Los números que van saliendo se deben coloca en un tablero dividido en 9 filas por 10 columnas. Cada columna va del 1 al 10, la segunda del 11 al 20 y así sucesivamente. Para cada fila, el color de los números es el mismo y distinto al resto de filas. - Debe contener un selector de velocidad para poder aumentar o disminuir la velocidad de ir cantando los números - Otro selector para el volumen del audio - Un botón para volver a cantar el número actual - Otro botón para volver a cantar el número anterior - Un botón para reiniciar la partida - Un botón para empezar una nueva partida - Se pueden introducir los cartones con un código único con sus números a partir de un archivo csv. - Cada cartón se compone de tres filas y en cada fila tiene 5 números. En la primera columna irán los números del 1 al 9, en la segunda del 10 al 19, en la tercera, del 20 al 29 y así hasta la última que irán del 80 al 90. - Si se han introducido ya los cartones, se deben quedar almacenados para no tener que estar introducirlos otra vez. . También se puede introducir a mano cada cartón de números con su código. - Debe tener un botón para pausar el juego o continuarlo. - Debe tener un botón de línea. Para que haga una pausa y se compruebe si es correcta la línea (han salido los 5 números de una misma línea de un cartón y solo puede haber una línea por juego). Si se introduce el código del cartón del jugador que ha cantado línea debe indicar si es correcto o no. - También debe contener otro botón para bingo (han salido los 15 números de un cartón). Debe comprobar si se introduce el código del cartón si es correcto. - Los números de cada partida deben ser aleatorios y no pueden repetirse cuando se inicie un nuevo juego.