Best tech stack for building a high-quality chess website?
Posted by vitund@reddit | learnprogramming | View on Reddit | 6 comments
I want to build a high-quality chess website and make it as good as possible. What programs, frameworks, and technologies would you recommend for building something like this?
I'm starting from scratch and would really appreciate advice from people who have a lot of experience from building web apps or chess projects before.
Good_Skirt2459@reddit
I made one as a hobby project. I did it in Elixir/Phoenix web. It has nice abstractions for pub/sub between servers & between clients but I think any tech stack will work.
Designer-Flounder948@reddit
One thing people underestimate with chess websites is performance. Once you start adding
things get heavy fast.I’d keep the architecture modular from day one so the project stays runable when features expand later.
marrsd@reddit
There's nothing about Chess that requires any specific knowledge. The techniques for writing a Chess app are the same for any other web app.
So I would use the project as a way to teach yourself web development in general. Start by building a site that works entirely without Javascript on the front-end. Learn how to handle HTTP requests on the back-end and provide full-page HTML responses. Once you've built a website that is entirely driven by the back-end, then use Javascript on the front-end to improve the user experience.
This will teach you about server-side rendering and progressive enhancement.
setq-default@reddit
Just stay away from server-side Javascript
grantrules@reddit
It really doesn't matter. There's not like one stack that is better-suited for chess. It's like asking what brand of tools are best for building a chair.
Fluid_Wasabi5688@reddit
The chair analogy is perfect but I'd say chess sites have some specific needs that might push you toward certain directions. Since you want Stockfish integration, you'll need something that can handle the engine communication well - Python or Node.js work great for this. For real-time gameplay you definitely want WebSockets so your users don't get frustrated with lag during moves