https://github.com/starsbit/bardle
A Blue Archive Wordle game variant. Guess the character based on the given attributes.
https://github.com/starsbit/bardle
angular blue-archive bluearchive python webcrawling wordle
Last synced: about 9 hours ago
JSON representation
A Blue Archive Wordle game variant. Guess the character based on the given attributes.
- Host: GitHub
- URL: https://github.com/starsbit/bardle
- Owner: starsbit
- License: gpl-3.0
- Created: 2024-05-02T16:20:40.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2026-02-24T09:43:00.000Z (about 1 month ago)
- Last Synced: 2026-02-24T15:36:08.936Z (about 1 month ago)
- Topics: angular, blue-archive, bluearchive, python, webcrawling, wordle
- Language: TypeScript
- Homepage: https://bardle.starsbit.space
- Size: 175 MB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# Bardle
A [Blue Archive](https://bluearchive.nexon.com/) [Wordle](https://en.wikipedia.org/wiki/Wordle) game variant. Guess the hidden student in 5 tries. A new student to guess is available each day.
The game is hosted at [bardle.starsbit.space](https://bardle.starsbit.space/).
## Development
The game is built with [Angular](https://angular.io/) and [Angular Material](https://material.angular.io/). Python scripts located in `scripts` are used to generate the game data.
### Running the Game Locally
Bardle was developed using Nodejs v22.13.1. To run the game locally, you will need to have Nodejs installed. You can install the required dependencies by running `npm install` in the root of the project. After the dependencies are installed, you can run the game by running `ng serve`. The game will be hosted at `http://localhost:4200/`.
### Building the Game
To build the game, you can run `npm run build`. The built files will be located in the `dist` directory. The game can be hosted on any static file server.
### Running Tests
The game has unit tests written with [Jasmine](https://jasmine.github.io/). You can run the tests by running `npm run test`.
### Deploying the Game
The game is hosted on [Vercel](https://vercel.com/). The game is automatically deployed when changes are pushed to the `master` branch.
## Updating Game Data
The game data is stored in the `public` directory. The two files `character_info.json` and `character_info_gl.json` contain the character data for the JP and GL servers respectively. The data is generated by running the Python script `scripts/__main__.py` in the root of the project.
The script fetches character images and data from [SchaleDB](https://schaledb.com/) and [Blue Archive Wiki](https://bluearchive.wiki/). The script requires multiple dependencies which can be installed by running `pip install -r requirements.txt`.
> [!NOTE]
> The script will crawl those webpages because they do not provide a public api. Please be respectful and do not abuse the script.
The `character_info_gl.json` contains estimated release dates since no official release dates are provided on the wiki. The script will attempt to estimate the release date by adding 6 months to the JP release date. This will become outdated in the future and should be updated manually.
### Anomalies
Some characters may be called differently in SchaleDB and the wiki. The script will attempt to match the names but some characters may not be matched correctly. These differences need to be maintained manually in `schaledb_utils.py`.
## Gameplay
The game support two modes: JP and GL. The mode can be changed by changing the selection in interface. The game will remember the last selected mode.
If you finish a game you can enter the _infinite_ mode. Here you can guess as many students as you want. The game will __not__ remember your progress.