Competitive Splatoon Platform
Go to file
2022-04-15 18:22:36 +03:00
.github Add eslint to GitHub actions 2022-01-09 13:50:29 +02:00
app Upgrade deps 2022-04-15 18:22:36 +03:00
cypress Fix type errors 2022-03-24 17:10:10 +02:00
prisma Conclude tournament 2022-04-11 18:31:25 +03:00
public Logo black borders Closes #816 2022-04-13 23:01:37 +03:00
scripts Recalc skills script include canceled matches 2022-04-13 21:18:32 +03:00
server Allow many mocked users 2022-04-03 11:18:13 +03:00
.env.example Remove chat feature flag 2022-04-13 21:22:24 +03:00
.eslintrc.js Introduce eslint-plugin-react-hooks 2022-03-30 19:58:08 +03:00
.gitignore Fix match-details 2022-03-12 14:02:21 +02:00
.nvmrc Update Node.js 2022-03-24 17:16:30 +02:00
.prettierignore Add Prettier 2021-12-02 20:56:38 +02:00
.stylelintrc.json Stylelint allow -webkit-backdrop-filter 2022-03-07 00:39:40 +02:00
cypress.json Update tests 2021-12-04 15:22:33 +02:00
LICENSE Create LICENSE 2021-11-27 16:18:15 +02:00
openskill.d.ts Add tau 2022-03-26 10:31:49 +02:00
package-lock.json Upgrade deps 2022-04-15 18:22:36 +03:00
package.json Upgrade deps 2022-04-15 18:22:36 +03:00
README.md Add Redis for leaderboards 2022-03-27 12:01:02 +03:00
remix.config.js "Fix" dev reload Closes #744 2022-02-24 17:54:46 +02:00
remix.env.d.ts Remix starter 2021-11-23 18:54:52 +02:00
tsconfig.json Seeding v=match initial 2021-12-28 08:40:05 +02:00
window.d.ts Chat SSE -> socket.io 2022-03-25 00:42:29 +02:00

Note: This is the WIP Splatoon 3 version of the site. To see the current live version checkout the main branch

Running locally

Prerequisites: nvm

  1. Use nvm use to switch to the correct Node version.
  2. Run npm i to install the dependencies.
  3. Make a copy of .env.example that's called .env and fill it with values.
  • You can check Prisma's guide on how to get PostgreSQL 14 set up and running locally.
  • Run npm run migration:apply:dev to set up the tables of your database.
  • Run npm run seed to seed the database with some test data.
  1. Run npm run dev to run both the server and frontend.

File structure

sendou.ink/
├── app/
│   ├── components/ -- Components shared between many routes
│   ├── core/ -- Core business logic
│   ├── hooks/ -- React hooks
│   ├── models/ -- Calls to database
│   ├── routes/ -- Routes see: https://remix.run/docs/en/v1/guides/routing
│   ├── styles/ -- All .css files of the project for styling
│   ├── utils/ -- Random helper functions used in many places
│   └── constants.ts -- Global constants of the projects
├── cypress/ -- see: https://docs.cypress.io/guides/core-concepts/writing-and-organizing-tests#Folder-structure
├── prisma/ -- Prisma related files
│   ├── migrations/ -- Database migrations via Prisma Migrate
│   ├── seed/ -- Seeding logic for tests and development
│   ├── client.ts -- Global import of the Prisma object
│   └── schema.prisma -- Database table schema
├── public/ -- Images, built assets etc. static files to be served as is
└── server/ -- Express.js server-side logic that is not handled in Remix e.g. auth

Seeding script variations

You can give a variation as a flag to the seeding script changing what exactly is put in the database. For example npm run seed -- -v=check-in seeds the database with a variation where check-in is in progress.

Commands

Convert .png to .webp

cwebp -q 80 image.png -o image.webp