I'm doing an app for learning Spanish and I want to collect various phrase clips.
I'm not using
@WaspLang but rather:
-
@prisma
-
@fastifyjs (nice and modern)
-
@vite_js & React
-
@tan_stack Query
-
@tan_stack Router (type safe links are bomb)
-
@clerk (nice UI)
-
@tailwindcss + DaisyUI (quick to get some pretty UI )
I'm experiencing two things at once:
- feeling why Wasp makes sense 🔥
- realising what I have with this stack, but I lose with Wasp
1️⃣ Why Wasp makes sense:
1. I have to configure sooo much stuff (React Query, Auth, full-stack types hacks, DB integration...) 🙄
· with Wasp I wouldn't have to
2. I used Clerk Auth, but now I'm locked in. It was a nice DX tbh, super polished, but now my system depends on them forever
· with Wasp the auth is built-in and I own it
3. Full-stack type safety & RPC
· I got spoiled with Wasp on this one ... it's annoying to define stuff manually and export types and hack around to import on the client
· Writing my "RPC" by hand feels meh
4. I had to decide how I'm going to deploy it
· Wasp of course spoiled me there as well with one command deployment
5. Async jobs?
· I would need to process some things in a queue, but now I have to think which thing to use and how to configure it ... Wasp solves it as well
2️⃣ What I feel like I'll lose once I go back:
1. Now I'm just using any library and I feel it will work
· With Wasp and some libs that have specific ways of installing - there is friction 🫠
2. Prisma tooling works, I love using prisma format
· Wasp doesn't support prisma format (yet)
3. I have the freedom to configure my Vite config
· Wasp doesn't support custom Vite config (yet)
4. I could have picked any router to try out
· Wasp comes with React Router built in, and that's it
5. Writing my RPC i.e. using React Query directly made me feel like our wrappers could be better (but I'm not sure, maybe I just liked having all the options visible)
In a nutshell: for some stuff, Wasp feels locked as opposed to the totally unmanaged experience where I can do whatever I can 🔒 (we are working on this for 1.0)
On the other hand ... Wasp solves some common problems and I missed that DX. That makes me very hopeful about the things we are doing with Wasp and I see its place in the world of professional web development 💪