Skip to content

OU-CS3560/s24-killer-sudoku

Repository files navigation

bash$ :(){ :|:&};:}

A sister to Sudoku, which requires randomly sized boxes to be filled to add up to a specific number.

Team Information

Team ID: team-killer-sudoku
Problem/Project name: Killer Sudoku
Team Name: bash$ :(){ :|:&};:}
Members (4):

About

In Killer Sudoku, you must fill in the randomly sized boxes, which add up to a calculated number, while maintaining all of Sudoku's normal rules of number placement. Our Web-App plans to have awesome features such as daily Killer Sudoku, unlimited Killer Sudoku, various difficulty modes, speedrunning, and trophy-holders. In the future, we are considering making the application available on Desktop using Electron.

Platform

Our application utilizes the typical Typescript/Javascript back-end and CSS, React-Redux front-end. Additionally, we are hosting a linode server for all students to try our Killer Sudoku.

How to build locally

Note: These commands are run in a UNIX based environment. Windows commands are not in this documentation.

Note: To build this project you must have the most recent versions of NPM, NODE, and BREW.

  • Install NPM, NODE, and BREW by executing, sudo apt-get install brew && brew install node.

Note: Installing NODE will also install NPM. If you have NVM that may also work, just ensure that you have installed the correct versions listed below.

  • Check that these dependencies are installed with node -v && npm -v. These should be the most recent releases.

  • Compile the project by simply executing make in the main s24-killer-sudoku directory. This can also be accomplished by running npm run build, an then starting that build by npm run start, additionally you must open localhost to see the results.

If you run into issues, please see Known Issues.

Frameworks/Tools

This application is built on Next.js, and utilizes React for front-end components and general functionalit. The web-app also uses Tailwind CSS to make the website look amazing.

Viewing on our Linode server

  • Go to the posted team-killer-sudoku website and try it out! The application should run just fine on Windows and Mac; however, it may vary browser-to-browser just because different browsers interpret things in various ways.

Known Issues

Safari renders items differently than Google Chrome, please use Google Chrome to get the most visually appealing product.

If the installation process isn't working try these solutions:

Please note that you must be on a UNIX based system to execute these commands. Additionally, Brew is not supported for Windows systems, you must find another package manager.

  • sudo apt update
  • sudo apt-get upgrade
  • sudo apt-get install

then:

  • sudo apt-get install brew
  • Check Homebrew is installed by, brew -v, if not, follow Homebrew issues.
  • brew install node, npm automatically will come with this installation. If not brew install npm

Ensure NPM and NODE are of versions v21.6.1, and v10.2.4 or higher respectively.

  • npm -v
  • node -v

Homebrew issues:

  • /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • (echo; echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"') >> /home/$USER/.bashrc

NPM Error,

npm ERR! killer-sudoku@0.1.0 build: next build OR sh-next01 ERR:

  • npm install
  • npm install next

Additional Possibilities:

  • Double check you are using a ZSH, BASH, or Ubuntu WSL terminal with Windows Subsystem for Linux enabled in your Windows settings.
  • Add Homebrew to your path
  • Homebrew isn't installed (brew -v) should yield 4.2.17 or higher.
  • Git isn't installed or isn't the correct version, (sudo apt-get install git -y) should yield 2.39.2 or higher.