Hey everyone! I've recently been diving into programming and I want to create a desktop app specifically for chess training. My vision is to develop a straightforward tool that aids users in tracking and planning their chess study sessions. This app would feature logging time spent on different categories like tactics and openings, weekly planning, personal notes, stats over time displayed with charts, daily reminders, and even the option to export data to CSV or Excel. Despite my enthusiasm, I'm still pretty much a beginner and not entirely sure about the languages or tools to use, particularly for UI design, data storage, and future integrations with platforms like Lichess or Chess.com. So, how do I actually start building an app like this? What programming languages and technologies would you recommend? Where should I begin learning all this?
5 Answers
Also, does your app plan to include actual chess gameplay? If so, I suggest starting by building a basic chess game first. After that, you can tackle the other features step by step. Create a simple roadmap: 1. Open and close the app. 2. Draw an empty chessboard. 3. Position the pieces. 4. Define the game state with proper tests. By breaking it down, you won't overwhelm yourself.
You can really use a wide array of programming languages to make a desktop app. Java, Python, C, C#, JavaScript—all good options. None of them have a definitive edge for your project, so it’s best to pick the one you’re currently learning or most comfortable with.
I'm curious, which programming language are you learning? It might help narrow down the best tools for you.
To build a desktop app like this, you'll need to learn a programming language, select a UI toolkit, and figure out a database for storing your data. There's a ton of flexibility; any language would work since many Chess programs exist in various languages. Just choose one you feel comfortable with. Get a book, do the exercises, and start prototyping until you have something functional!
If you're looking for tools, consider learning React first, then move on to Electron for building your desktop app. It’s a solid combo for what you need!
Just be cautious—it's not like you can create every type of desktop app with Electron and React. Make sure it fits your requirements!
Yeah, there are chess programs written in so many languages. If you want to see an entire working chess program's code, you can find crazy examples that won competitions!