Skip to content

This is the front-end UI for a full-stack application called Ludole. Ludole is inspired by Wordle, video games, and other daily games

Notifications You must be signed in to change notification settings

BrandonDoza/ludole

 
 

Repository files navigation

👾 Ludole

Daily game inspired by Wordle, videogames, and nostalgia

HTML5 CSS3 JavaScript React React Router NodeJS Nodemon Express.js Postgres cypress NPM Vite Figma

📸 Screenshots

App Screenshot

📝 Overview

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.

✨ Features

  • 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

🎥 Demo

https://ludole.vercel.app/

⚙️ Installation

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

🧪 Running Tests

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

🏫 Context

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.

📚 Lessons Learned

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.

👥 Authors

📄 License

MIT

This project is licensed under the MIT License - see the LICENSE.md for more details.

About

This is the front-end UI for a full-stack application called Ludole. Ludole is inspired by Wordle, video games, and other daily games

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 88.2%
  • CSS 10.9%
  • HTML 0.9%