Devlog 3 - ITS DONE!!!
WE DID IT. THE DREAM JOURNAL IS DONE. SHIPPED. DEPLOYED. REAL. I cannot believe I’m saying this after the Devlog 1 panic session, but here we are.
The Deployment Saga
So Cloudflare and I had a disagreement. Several disagreements. Over multiple hours.
First the build kept failing because my build output directory was wrong in the settings. Locally it builds to one folder, Cloudflare was looking in another, and instead of telling me that nicely it just gave me a vague error and a failed deploy. Cool. Very cool.
Then once the build finally passed, the site deployed and… nothing worked. Blank page. Turns out my environment variables never made it to production. I had them in my local .env file, feeling all safe and organized, completely forgetting that Cloudflare has no idea those exist. Had to go add every single one through the dashboard like a peasant. Twice, because I typo’d one.
At that point my brain was cooked. So I’ll be honest with you all: I let AI handle the rest of it.
The Confession: This Project Is 10% AI
That’s right. I said it. 10% AI, 90% me crying at my keyboard.
Here’s the thing though. This is production. Real users. Real data. And my real credit card attached to that very expensive 2k server. So when the AI started pointing out security issues, I listened, because I do NOT want to wake up to a drained bank account.
What it caught:
- My API key was basically in public. Part of the AI request logic was reachable from the frontend. If anyone opened devtools they could have yoinked it and run up my bill into the stratosphere. Moved everything server side where it belongs.
- No rate limiting. Someone could have spammed the dream analysis endpoint a million times and my card would have personally felt every single request. That’s fixed now.
- Input sanitization. Turns out letting users type literally anything into a box and sending it straight to your backend is a bad idea. Who knew. (Everyone. Everyone knew. I just forgot.)
- Tightened up the CORS config from “allow everything, we’re all friends here” to an actual allowlist.
Sleeping much better at night now.
Other Stuff That Got Done
- Dark theme is IN. My eyes have forgiven me. The contrast actually contrasts now.
- CSS is finally locked in, and I was right in Devlog 1: once that was done, the rest really was smooth sailing.
- The duplicate dream bug from the testing days is long gone. The giant duck dreams rest in peace.
- Production AI is running on the 2k server and holding up. My wallet is still in critical condition but stable.
Where To Get It
It’s available soon! Check the project bio for the link. Go journal your weird dreams. The giant duck one deserves to be written down.
What a journey. From “I have made nothing” to a real live product on the internet. See you all at the next one 🫡
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.