- Published on
React Project Beginnings
Step 0 - WTF?!
As in "What the Flip?" Now go wash your mind out with soap. Shame on you.
So I had a thought:
Hey, I'd like to relive the glory days of the mid 90's, playing Legend of the Red Dragon, but on the web!
Then I had another thought:
I don't care that this game is already hosted somewhere online and I can play it anytime I want!
Then another one:
How hard could it possibly be to recreate that experience in React?!
And since it's always a good idea to plow forward with hare-brained ideas like this, I've decided to go right ahead and entertain this one. I mean, I know a little React, so what could possibly go wrong?
Here's what I'd like to do: Build a text-based RPG-like thing using React, C#, and a database of sorts
This should be an interesting endeavor for the following reasons:
- Some more good practice with React, Tailwind, ShadCN (maybe), C# and database stuff
- A good excuse to try a hexagonal architecture
- Another excuse to truly practice TDD
- Speaking of databases, it'll be nice to see if I can find an excuse to use both an RDBMS and a NoSQL database
- Try dev-logging and put something new on this site
- It'll be interesting to see the real feasibility of a multiplayer game like this in React
- Even more interesting to see what can actually be done to limit cheating
- Ever more interesting to see how soon laziness kicks in for this part
- Even more interesting to see what can actually be done to limit cheating
We'll be going over this at a very high level. The plan is to write about:
- what I'm thinking
- the decisions I'm making and why
- a high-level overview of what I'm doing now
What this won't be:
- a tutorial on how to make this particular project (as in a line-by-line code-along; there's more than enough of those out there)
- a conversation with anyone subjecting themselves to this nonsense (there's no comments plugin setup for this site)
- something I ever intend to make money with
Before we actually get started, though, there will be some preliminary articles that will contain much more detail about the project itself, its architecture plan, and the process. I'll also be sure to set expectations as best I can from the get-go, so you'll know what to expect (why are you putting up with this madness, anyway??). I'm also trying to buy myself time to finish reading Writing Effective Use Cases, since I want to gather use cases while prototyping. More details on that later.
Back to the topic of expectation-management... This whole thing will be subject to motivation, which is unbelievably scarce for me nowadays. So, if these articles suddenly stop for a couple weeks, that probably means I've moved on, burnt out, or rage-quit. I'll try to post a final article for closure, but don't count on it. Also, the frequency of articles will probably vary, since sometimes there will be a lot to write about, and other times there won't be. I'll try to be clear about what I'm currently doing.
For example, if I'm in the middle of rage-googling a problem I've run into, there probably won't be any articles being written, but if I manage to solve the problem, I should write about it. In other cases, if things are running smoothly, there might be more things to write about. So, don't assume there will be a lot of rhyme and/or reason to the process.
This seems like as good a place as any to end this one, so I'm going to call it. The next one will contain more details on the project itself: the tech and methodologies involved.