Building InvestorSim

I don't have much experience with React (opens new window), so I decided to build a market simulator game. This isn't a fully developed game- I just wanted to spend a week learning React and trying out ideas.

Here's how it turned out:

InvestorSim

Libraries used 🔗

Charting 🔗

For charting, I used chart.js (opens new window). It's popular, fairly easy to use, and is MIT licensed. I've used it for past projects, and since this was a small part of the app (and not really part of the goal), I didn't consider other options. There is a library that wraps chart.js in an easy to use React component, but I quickly ran into a bug causing unnecessary re-rendering (opens new window). I wanted my chart to smoothly update like a live stock tracker, so I ended up using Chart.js directly.

Thoughts on React 🔗

I enjoyed working with React. Managing state out of the box was straightforward. I intentionally avoided using Redux since it was overkill for this app (and I've already worked with similar libraries like NgRx and Vuex). My biggest challenge was deciding on the best way to implement certain features. There are many ways to get things done in React (functional vs class components being one example). While this flexibility is great, I can also see it being a challenge in a larger team to enforce consistency.

About Me

Hi, I'm Dominic 👋 I'm a software engineer building front-end web apps, back-end services, and some things in between. I most enjoy working with TypeScript and .NET (6+/Core). Check out some of my projects, or get in touch.