Project Timeline
Here is the development timeline for each part of the project: game library, backend API, and frontend client.
Blockers
Section titled “Blockers”There were a few blockers during the project—some valuable learning experiences, others a total waste of time.
Blockers / Time Wasters:
-
Token Authentication with Knox
- Not a waste of time, since I’ll use it in future projects, but it did take a significant amount of effort to implement.
-
<Canvas>
Game Board- I originally tried building the game board with JavaScript Canvas for mouse interactivity. The code quickly became unnecessarily complex, so I switched to using a
<div>
with borders and border-radius instead.
- I originally tried building the game board with JavaScript Canvas for mouse interactivity. The code quickly became unnecessarily complex, so I switched to using a
-
Zustand, TanStack React Query, and openapi-ts
- Zustand is a great state management library, and pairing it with React Query is considered an industry standard. However, it was my first time using them, so I spent a lot of time learning. In the end, I decided not to use React Query in favor of simpler Fetch.
- Like Knox, I don’t regret learning it, but it was time-consuming.
-
openapi-ts and swagger-typescript-api
- Both libraries generate TypeScript API clients, making client–server integration easier and safer. I spent a fair amount of time early on learning them.
Note:
- I considered these frontend libraries because my co-founder at my previous startup had used them successfully.
Game Library timeline - bncpy
Section titled “Game Library timeline - bncpy”Backend timeline - bncapi
Section titled “Backend timeline - bncapi”Frontend timeline - bnc-client
Section titled “Frontend timeline - bnc-client”- The dates are in Korean (KST) Time zone.
- The image/pages above was generated with
git log --pretty=format:"%h %ad %s" --date=short > formatted_history.txt
command and claude LLM. - Old Timeline Gantt Chart