September 2024 Update
Alex Dumouchelle
September, 08 2024
Update Video
What’s changed?
OpenMarch development is gaining momentum! Many things that were designed with a short-term result in mind are now being refactored to support easy addition. This will allow for easier testing, faster development, and quicker onboarding for future contributors (please).
Also, there was a weird bug where OpenMarch took 3-4 seconds to do ANYTHING (loading marchers, changing pages, etc). I couldn’t seem to figure out why this was happening, but it only affected my Macbook’s main account. Making a new account fixed it. Must have been some software I installed that messed with it.
We’re now going full throttle to get this ready for the 2025 marching season!
Goals accomplished this month
I said that I was hoping for OpenMarch to be much more mature by August. Even though it’s past August (whoops) a lot of work has gotten done! Everything I implement now has an informed “long term maintainability” approach. Code is reusable, I’m writing tests as I go, and I’m waaayy more familiar with all of the underlying software OpenMarch runs on (React, Electron, Fabric.js). Here’s a few things I’ve finished:
- Switched from Jest to Vitest
- This was probably not necessary, but the tests are faster!
- Got an Apple code signing certificate, so MacOS doesn’t think OpenMarch is a virus!
- Also (kind of) figured out how to let a user launch OpenMarch from a file in finder
I now have a plan and vision for exactly how I’m going to make OpenMarch more stable and usable. Development of this is more test-driven, which I have been saying for months, but I’ve really gotten into a flow of how I want my vanilla Typescript classes to interact with my React components.
These are the things I’m working on right now:
- “Draw and distribute” marchers in a line
- ~60% done with this
- Once I finish this, adding curves, squares, and other shapes should be much quicker
- Refactoring the database operations into separate generic classes
- ~30% done with this
- This is what’s going to inspire confidence in stability and allow me to add new objects quicker
- Using the simple principles of reusability, I don’t need to write nearly as many tests
- High school football field
- This is actually already done, I just need a UI to let the user switch
As an aside, I’ve been getting into the habit of going to bed sooner and waking up early to work on OpenMarch. I used to work on this only at nights, but allows me to make certain that I find the time for it every day.
Plans for October
Hopefully I’ll have some full-fat features I can share. I don’t want to rush things, but here’s what I want done:
Must haves -
- Refactor the electron database code
- This will come with testing and easier implementation
- Draw and distributing lines of marchers
Nice to haves -
- Adding measures manually
- “Snap to grid” mode where marchers can only move by whole step
Remember, you can always check the GitHub project to see what current issues are in the queue.