#7days7websites - Day 1

#7days7websites is a challenge I heard about on twitter and decided I would take part in, there's little more that needs saying about the concept, I think the name is pretty descriptive. I started this some way behind the rest of the pack, and I am most definitely playing by my own rules.

The (official) rules

These are ripped straight off of the https://7days7websites.glitch.me/ site, I've taken out a couple that don't make sense out of context (and weren't really rules anyway...)

I mentioned that I was playing by my own rules, well the first thing I did was scratch off that first one - I'll do 7 sites in 7 days, but I'm not going to do them in consecutive days, this will be a project that I take my time about. I will be learning a new language and/or tool, and once I'm confident I can use it I will be creating a site in a single day.

Day 1 - The Name Game

What's the name game?

We often go away with friends for a week at new year, or at least we did before the kids came along... These are good friends who we've spent a lot of time with over the years, and the name game is one thing that we keep returning to.

I think we were introduced to the game the very first time we went away as a group. We were staying in a lovely cottage, just the 14 of us, and we were asked to all write 3 names to put in a hat.

We split into 2 teams, the idea for one player to be active at a time, for them to pull out a name from the hat and for their teammates to guess who was on the card.

For the first round, the active player should describe the person to their teammates without saying their name, they can use any other words they choose (much like articulate). When a name is guessed correctly it's then out of play until the next round, and the player pulls out another name. Each player has 30 seconds.

When all names have gone, they're added back into the hat and we move on to round 2. The second round works in the same way (player draws a name out of hat and teammates guess) but rather than describing the person they now need to act it out, think charades.

Finally, round 3 the player is allowed only to say a single word. Choose wisely..

Points are scored by guessing the names, and the team with the most points at the end of the game wins.

The website

So enough about the game, and more about the website. I won't beat around the bush, here's the link - http://namegame.garethmidwood.co.uk/

This isn't a polished solution, it was built quickly (in a day!) to be ready for a friends' birthday party. As we're in lockdown at the moment and couldn't meet up to play in person, we took the fun online. You need to be on a video call to play, and the site doesn't help you with that :)

The tech

I have previously used meteor for building a home automation tool and for a couple of appearances on the gadget show, once controlling a bunch of digital flowers and another time for the 400th episode mobile phone birthday cake. The framework has been updated since those projects, and it now offers the ability to use react on the frontend, something that I took advantage of here.

I didn't have the time to build a user role system, so the administrator experience is based on specific usernames, that means the game isn't really playable unless I'm about. It's also limited in that there are no game rooms, there's just a single game that all users join in with.

The beauty of meteor, and the reason I've used it on so many projects in the past is that it runs in real time across all connected devices, it's just so easy to synchronise things. In this case it was used to sync the names each person had entered and to make sure each player knew whose turn it was and when that turn finished.

Overall verdict

Great fun building in meteor, and nice to play with react in a short project. Unfortunately there wasn't really enough time to build a fully featured game, but that's not really the goal of #7days7websites, so overall - a great success.

Oh and we had a great time playing it too, even online the concept still works.