Releases: joshzcold/Friendly-Feud
3.2.0: upgrade node, nextjs and golang
What's Changed
- feat(dependencies): upgrade all packages to latest by @joshzcold in #234
- chore: update dependencies for latest nextjs cve by @joshzcold in #235
Full Changelog: 3.1.2...3.2.0
3.1.2 Bug fixes
What's Changed
- fix(admin): debounce and set defaultValue for final round answer inputs by @joshzcold in #230
Full Changelog: 3.1.1...3.1.2
3.1.1 Some UI changes and Bug Fixes
What's Changed
- Fix redundant team naming by @karlromets in #226
- fix: store hostpassword in database and retrieve in when getting the room data by @joshzcold in #228
- chore(deps-dev): bump brace-expansion from 1.1.11 to 1.1.12 in the npm_and_yarn group across 1 directory by @dependabot[bot] in #227
Full Changelog: 3.1.0...3.1.1
3.1.0: Hosted game buzzer and help docs
What's Changed
- fix: reload when refresh timer goes below 0, use ref for counter by @karlromets in #216
- feat(backend): add current game count to health endpoint by @joshzcold in #220
- Fix/final round 2 answers by @joshzcold in #224
- feat: buzzer screen for admin that is not a registered player by @joshzcold in #221
Full Changelog: 3.0.0...3.1.0
New exciting feature to Friendly Feud is the ability to host dedicated buzzers that aren't a players mobile phone.
Allows you to have a more real-like experience with the game where contestants physically come up to the buzzers in order to play.
You can either put this screen on a tablet facing up on a table or even better this screen can get hooked up to physical buttons if you are tech savvy enough.
The buzzer screen is listening for keyboard presses j and k. If you can get programmatic buttons that can do keyboard presses then you can actually have physical buttons that interact with the game!
Here are some screen shots.
Also a new page for documentation on the website. You will be able to see the "Help" button on the login and admin page that will direct you to the help docs. Localization and theme support is baked in, however only English at this time is written.
3.0.0 large typescript migration
Thanks to @theredwillow and @karlromets for doing the work to migrate our JavaScript code base into typescript.
This is great step in ensuring this project is maintainable by a wider audience.
What's Changed
- chore(deps): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot in #204
- fix(ui): Mistake image uses the .png to make sure it looks correct by @joshzcold in #205
- refactor(Makefile): remove WSL-specific config by @karlromets in #206
- Clear stale session cookie on room not found error by @karlromets in #207
- chore(deps): bump next from 14.2.23 to 14.2.25 in the npm_and_yarn group across 1 directory by @dependabot in #208
- Split admin page by @karlromets in #209
- chore(deps): bump next from 14.2.25 to 14.2.26 in the npm_and_yarn group across 1 directory by @dependabot in #212
- TypeScript migration by @karlromets in #211
- Feat/typescript migration by @joshzcold in #214
Full Changelog: 2.0.15...3.0.0
2.0.14
What's Changed
- ALLOWED_ORIGINS environment variable by @karlromets in #197
- feat(admin): Hiding questions happen automatically between rounds by @joshzcold in #198
Full Changelog: 2.0.13...2.0.14
2.0.8 various features/fixes
What's Changed
Full Changelog: 2.0.0...2.0.8
- Lots of upgrades to nextjs and tooling around the frontend
- #146 version indicator on the front page
Friendly Feud 2.0!
New year, new large change!
Special Thanks to @karlromets for providing the bulk of new features for this release! He truly is a talented developer and I am very thankful for his time, help and knowledge.
This is the 2.0 release and with it are some big and exciting changes:
Changing the Name
- This project's name is now "Friendly Feud" to give it a better chance to avoid possible legal liability for the future of this project.
- The main website is still at https://famf.app
Changing the backend to golang
The backend of this project is now written in golang. If you want to fork this project while it was only JavaScript you can fork off the 1.5.4 release.
Switching to golang gives a number of benefits:
-
Websocket handling is now in goroutines allowing this app to scale well.
-
Strongly typed language helps the overall organization of the data for Friendly Feud. While converting to golang I was able to fix my past structural mistakes in JavaScript when writing in golang.
-
Using golang interfaces I was able to create a very easy way to add more storage connections that can be easily plugged in.
New Features
- @joshzcold Support for choosing storage backend for the game. Picking between sqlite or memory storage using the
GAME_STOREenvironment variable
famf.app will be deployed with the sqlite storage backend, which will allow changes to Friendly Feud without anyone losing progress on their current active game!
-
@joshzcold e2e tests using playwright. This will make changes to the website much easier and stable as we make changes.
-
@karlromets #101 Implement player board hiding.

This will hide the game board or final game board from the player if checked. Allows you to hide the game screen from a remote player without kicking from the game.
-
@karlromets #100 Implement buzzer popup. This will show on the game screen which user buzzed first and play a sound when the buzz comes in. This means the admin no longer needs to scroll down to the buzzer list to determine who buzzed first.
-
@karlromets #99 Implement a join url on the title page. There is a new environment variable for nextjs
NEXT_PUBLIC_TITLE_URLthat will show the game's joinable url for the players.

-
@karlromets #98 Support for translation in error messages. Error messages now have error codes that then get translated if they are available in the translation files.
What's Changed
- Fix cached logo by @karlromets in #95
- Fix final round timer state by @karlromets in #94
- Fix error translation by @karlromets in #98
- Fix various console errors by @karlromets in #96
- bug(csv) fix for csv "No Header" uncheck uses header by @joshzcold in #103
- Famf 2.0 large change. by @joshzcold in #108
- Implement environment variables by @karlromets in #99
- feat(dev): support for windows wsl in development by @joshzcold in #111
- Implement player board hiding by @karlromets in #101
- fix(session): fix for getting back in via session token by @joshzcold in #113
- chore(e2e): create test for hiding player's screens by @joshzcold in #116
- fix(session): player's team is kept when refreshing player page by @joshzcold in #119
- Implement buzzer popup by @karlromets in #100
- Add Estonian games by @karlromets in #120
- Fix theme state by @karlromets in #107
New Contributors
- @karlromets made their first contribution in #95
Full Changelog: 1.5.5...2.0.0
Show the game window on a seperate computer
Now a joining player can "Open Game Window" to become a "spectator" which is just the /game page that the admin usually can open.
This allows showing the game on a seperate browser/machine.
The Spectator window can "quit" to get back to the index page.
1.5.4: Mistake button and removal of state data
Features
- new mistake button that doesn't count towards the team count. Just shows an overlay to indicate a mistake.
- new mistake overlay triggers on team mistake.
- mistake sound is played on buzzer screen as well as game screen.

- new button to reset team mistakes if needed

Fixes
- json games have been removed of "state" data and cleaned up.

