GamesmanUni
is a web implementation of GamesmanClassic
in C
, developed as part of GamesCrafters research and development group at University of California, Berkeley. Gamesman
is a finite, two-person, perfect-information game generator based on Master thesis by Professor Dan Garcia.
-
Install Git if you have not already, though it should come with most OS.
-
Install latest current version of Node.
You can get it from Node JS Official Website, or via Homebrew Formula on MacOS.
I suggest you use Node Version Manager to easily switch between different Node JS versions for different projects on your system. To install NVM, run the following commands:
# Download NVM installation script and run it. curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash # Install a specific version (version 18 here) of Node.js. nvm install 18 # Activate Node.js from NVM. nvm use 18
-
Enable
corepack
binary.corepack enable
Corepack is the binary included by default with Node JS version 16.10 and later, enabling developers to use different supported package manager versions across multiple projects.
This allows us to skip the installation of package manager, Yarn in our case.
-
Clone GamesmanUni repository locally, and navigate into the root directory.
git clone git@github.com:GamesCrafters/GamesmanUni.git cd GamesmanUni
-
Install external dependencies.
yarn
-
Build GamesmanUni for production.
yarn build
The site should be available in
./dist
once the build is done. -
Preview the production built of GamesmanUni locally.
yarn preview
-
Launch Development Hot Module Replacement (HMR) server, recommended for development as you won't need to rebuild every time you make a change to a source file. Note that running this step does not replace
yarn build
since it doesn't update the contents in./dist
. If you are pushing the latest build to the NYC server, you still need to runyarn build
after making changes.yarn dev
-
Preview the production built of GamesmanUni served with https locally to test PWA features.
yarn preview:https
I started this project initially under code name ❣️ Developed with 💙 at University of California, Berkeley. ❣️ 🐻 Go Bears! 🐻 |