This video details the tech stack the creator, Jan Marshal, is using for his B2B starter kit. He explains his choices for each layer, from the foundation and frontend to the backend, security, payments, and more, focusing on why each technology was selected for its modernity, scalability, and maintainability.
Jan Marshal chose NexJS for both frontend and backend development primarily to reduce latency and complexity. He explained that using a separate backend would introduce an extra layer, requiring more work and increasing the time it takes for the application to respond. He also noted that while NexJS's backend capabilities were historically subpar, recent versions have become powerful enough to eliminate the need for a separate backend.
Jan Marshal mentioned that he has become "quite annoyed" with Radix UI due to a large number of open issues and feature requests that are not being actively addressed, despite the project being maintained. He views these as signs that the library is "not great" in its current state, leading him to consider switching to Base UI as a more promising alternative.
OPC enhances the API layer compared to NextJS server actions in several ways, according to Jan Marshal:
requiredAuth middleware), rate limiting, and bot detection. This modular approach to handling cross-cutting concerns is more structured and powerful than what's easily achievable with server actions alone.requiredAuth) can be integrated directly via middleware within the API procedures.While he acknowledges that OPC might involve more boilerplate code initially compared to server actions, he believes the long-term benefits in terms of structure, scalability, and maintainability outweigh this initial overhead.
Here's a tweet summarizing the video:
Just watched Jan Marshal's deep dive into his PERFECT tech stack for a B2B starter kit! 🚀 Key highlights:
A must-watch for anyone building modern web apps! #webdev #NextJS #TechStack #JavaScript #TypeScript