Daily game inspired by Wordle, videogames, and nostalgia
Ludole is a daily game inspired by Wordle and classic videogames. Each day, players are presented with a randomly selected game cover that is initially blurred. Players have 8 attempts to guess the game title, with each incorrect guess slightly unblurring the image. This project focuses on building a building out a fullstack application, exposing us to backend technologies.
- Randomly generated game cover each day
- Heat map indicating the accuracy of guesses
- Multi-page application using React Router
- Responsive design for various screen sizes
- End-to-end testing with Cypress
- Data fetching using the Fetch API
- Custom-built REST API
- PostgreSQL server for data storage
To run Ludole locally, you will need to set up the backend. Instructions for this are available in the backend repository. Alternatively, you can check out our live deployment. Note that the live backend server may have a slow startup time if it has been idle.
git clone git@github.com:KojinKuro/ludole.git
cd ludole
npm install
npm run dev
The server should be running on: localhost:5173
To run our Cypress tests, run the following command
npm run e2e
From there the Cypress test runner will run. For more information on Cypress, check out the Cypress documentation
Ludole was developed in one week at the Turing School of Software & Design. The project was a group effort by four frontend developers, totaling approximately 90 combined programming hours. The primary goal was to build a comprehensive full-stack application.
The primary objective was to create a full-stack application utilizing React for the frontend and Express, Knex, and PostgreSQL for the backend. We succeed in achieving these goals, and learned a lot from doing this. Key takeaways included understanding the importance of prioritizing essential features for the MVP and navigating extensive documentation. We found alternative resources like developer gists, YouTube tutorials, and mentor guidance to be particularly helpful.
Deploying the backend on a cloud provider was initially intimidating, but using Render.com simplified the process. The fact that their service was free as well was a nice bonus. This also included learning how to setup a .env
and keeping our environment variables safe to make sure no one could mess with our database.
Most team members focused on backend learning, while some reinforced frontend concepts such as Cypress testing, prop-types checking, and responsive design implementation.
- Brandon Doza - @BrandonDoza
- Charles Kwang - @KojinKuro
- Gwyneth Patrick - @moth-dust
- Lydia Sims - @LISims88
This project is licensed under the MIT License - see the LICENSE.md for more details.