A reasonable starter kit for building React and Node.js turn-based games.
This is a standard full stack JavaScript monorepo build with `yarn` and organized with lerna. Frontend and backend are found in `client/` and `server/`, respectively.
If you have `nix` and `direnv` set up, just open this directory. Everything will ‘just work’. Otherwise:
- Make sure you have `yarn` installed globally and an `eslint` plugin, or a language server protocol plugin that will allow you to use `tsserver`, installed for your editor of choice. VSCode is your go-to option if you’re newer to software development.
- Run `yarn install` in the root directory of the entire project to install all dependencies.
- Run `yarn start` in the root directory to start up the hot reloading process.
- React functional components for templating and structure. Industry standard.
- CSS-in-JS (JSS): This is my personal preference, but it’s not something we have to use.
- Express API with websockets. I think it’s best to use websockets and in-memory data as much as we can, because there isn’t much of a reason to create accounts and persist data yet (IMO).
- All-in-one, strongly opinionated ESLint + Prettier linting and fixing. Feel free to convert errors into warnings if something is annoying you.
- Some sort of deployment infrastructure
Mondrianesque, de Stijl inspired