audio-engineer / chess-teacher-front-end Goto Github PK
View Code? Open in Web Editor NEWNext.js front end for ChessTeacher project
Home Page: https://chess-teacher-front-end.vercel.app
Next.js front end for ChessTeacher project
Home Page: https://chess-teacher-front-end.vercel.app
Develop the landing page
The Prettier configuration should be updated to only include the file types and directories that are actually relevant
When a game is running, the black player should see the board upside down, while the white player should keep the current board orientation.
As for selecting a color, there are two options:
A chat component library should be added and some simple interaction with the chat made possible
Change the line separator to \n
so that the warning disappears on Windows
According to the eslint-config-prettier documentation, the configuration should be put at the end of the configuration array.
By using environment variables in compose.yaml
and devcontainer.json
, the source code directory in the server
container should be set to the project name, i.e. chess-teacher-front-end
.
Remove continue-on-error: true
for the Prettier step, since it otherwise doesn't fail the workflow on Prettier errors. Also, add eslint-report.json
to .prettierignore
since it otherwise reports this generated file as wrongly formatted, and remove creyD/prettier_action
since it behaves weirdly. Use npm run prettier
instead.
Turns out that the Prettier CLI takes .editorconfig
into account by default and that configuration option doesn't exist
There should be a simple Stockfish image so the developers can play with the software in a containerized environment before it gets deployed as a service to the cloud.
Since we are running two or three processes in the container (stockfish
, sshd
and tcpserver
), it makes sense to use Supervisor to manage them.
Supervisor should be set up to manage the processes
Update all packages with npm update
The development container configuration should be updated to use the mcr.microsoft.com/devcontainers/typescript-node:20
image instead and select the correct TypeScript version in the workspace. Also, support for Live Share should be added.
Consolidate the Prettier
and ESLint
GitHub actions into one workflow that covers both scenarios and make it only run on pull requests
Update all packages using npm update
The name is still Chess
in those two areas and should be changed.
Update all packages with npm update
BuildKit is currently disabled
As the title says
The Stockfish image should be updated. It should include a variety of usage modes, e.g.:
The project needs to have a changelog that adheres to the Keep a Changelog specification.
I think that the feedback from Stockfish should be provided through the chat window, i.e. Stockfish talks to the users like a chat participant.
What do you think?
Make sure that the base app is functioning and acts as a solid base for further development.
Set the editorconfig
option to true
Update the typescript-eslint
package to the latest version 7.0.1
and migrate the ESLint configuration to the new ESLint flat configuration file.
We need to plan what we will need stockfish to do and how it should do it.
As much as I like playing against a bot that does random moves (the only way I can win (sometimes)), the game needs to be played by two REAL people
Next.js was updated to version 14 but MUI still uses the v13 cache provider
Develop the login page as well as Google Auth
Currently, no debugging capabilities are enabled, but are necessary for the project to proceed. Debugging should therefore be enabled.
Unfortunately, debugging Next.js on Docker is currently broken. See e.g. vercel/next.js#53127. Therefore, a temporary patch should be created to work around some of the issues.
Make a local development environment for database and auth using https://github.com/seletskiy/firebase-emulator
The project contains some unused sample code that should be deleted
Using a button to join the temporary '123' lobby and handle logic when it comes to who's playing and who's spectating
A service running the Stockfish container should be added to Docker Compose so that calls can be made from the server
service
The UI should include a demo of how the interaction between the React frontend and the Stockfish server will look like
Configure compose.yaml
so that the audio-engineer/chess-teacher-firebase
and audio-engineer/chess-teacher-stockfish
images are downloaded and built from their respective GitHub repositories
The eslint.yml
file includes some configuration options that are unneccessary and should be removed.
The ESLint configuration should ignore the .next/
directory
The ChainedFunctionCallJS
inspection should be disabled for WebStorm
There are a couple of more configuration files related to JavaScript/TypeScript configurations that need to be ignored
The repository should be called chess-teacher-front-end
instead to have a more descriptive name.
The Dockerfile
in the stockfish/
directory and related files/logic should be moved to a new repository dedicated to Stockfish API development. Furthermore, the Docker Compose stack and documentation should be updated to accomodate this new setup, and a simple sample code should be added.
Run npm update
to update all packages.
Update all packages with npm install [package]
or npm update
The project README.md
should include more information about how to start, run and develop the project, and general information about the project.
The project documentation should give more insight into local development, especially the Stockfish image, Docker Compose and formatters/linters
It was decided to remove the changelog again. Please remove changelog.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.