[{"data":1,"prerenderedAt":144},["ShallowReactive",2],{"profile":3,"projects:page:\u002Fprojects\u002Frenaissance-club":22,"projects:docs:\u002Fprojects\u002Frenaissance-club":130,"structured-data:current-stack":133},{"id":4,"alias":5,"current":6,"email":10,"extension":11,"headline":12,"links":13,"location":17,"meta":18,"name":19,"stem":20,"__hash__":21},"profile\u002Fprofile.yml","readonly",{"role":7,"company":8,"companyUrl":9},"Fullstack Engineer — Tech Lead","DataCose","https:\u002F\u002Fdatacose.com","redonemini18@gmail.com","yml","Fullstack Engineer",{"github":14,"linkedin":15,"twitch":16},"https:\u002F\u002Fgithub.com\u002FRedoni18","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fredon-emini\u002F","https:\u002F\u002Fwww.twitch.tv\u002Fr3adonly","Pristina, Kosovo",{},"Redon Emini","profile","Fbb1IAp4nuUOOtgXdwpzcqSmG0CUKtZ4D0ifPqdK5QU",{"id":23,"title":24,"body":25,"description":104,"extension":105,"featured":106,"kind":107,"links":108,"meta":110,"navigation":106,"order":99,"path":111,"period":112,"preview":113,"seo":118,"stack":119,"stem":127,"year":128,"__hash__":129},"projects\u002Fprojects\u002Frenaissance-club\u002Findex.md","Renaissance Club",{"type":26,"value":27,"toc":96},"minimark",[28,38,43,46,50,58,64,68],[29,30,31,37],"p",{},[32,33,24],"a",{"href":34,"rel":35},"https:\u002F\u002Frenaissanceclub.co",[36],"nofollow"," is a membership club in Los Angeles and Orange County built on a simple promise: tell it when you're free, and it plans something for you. Each month, members pick three dates that work for them. The club finds an experience that fits, like a pottery class, a cooking lesson or a blacksmithing workshop, and reveals it a few days ahead. The member says yes or swaps it for something else. The membership covers the cost, so there's nothing to research, book or pay for on the day.",[39,40,42],"h2",{"id":41},"my-role","My role",[29,44,45],{},"I build the platform at DataCose, where it has been my main project since September 2024. I work across all of it: the backend, the app members use, and the dashboard the club's team uses to run everything behind it. That included moving the club's day-to-day operations off Airtable and onto the new platform.",[39,47,49],{"id":48},"what-it-does","What it does",[29,51,52,53,57],{},"For ",[54,55,56],"strong",{},"members",", it's where the membership lives. They pick their dates each month, see what's been planned for them, confirm it, reschedule or swap it, and look back on everything they've done so far. They can connect with other members, RSVP to group meetups, nominate friends to join, and manage their plan and billing.",[29,59,52,60,63],{},[54,61,62],{},"the club's team",", it's the tool they run the club with. They plan each member's month, manage the catalog of experiences and the vendors who host them, keep track of every booking from the first reveal to the day itself, and follow up with members when something needs an answer. Reminders, confirmations and updates go out to members by email and text automatically along the way.",[39,65,67],{"id":66},"what-its-built-with","What it's built with",[69,70,71,78,84,90],"ul",{},[72,73,74,77],"li",{},[54,75,76],{},"Backend:"," Python and FastAPI, with PostgreSQL and SQLAlchemy.",[72,79,80,83],{},[54,81,82],{},"Frontend:"," Nuxt 3 and TypeScript, one app for members and staff.",[72,85,86,89],{},[54,87,88],{},"Infrastructure:"," Google Cloud (Cloud Run, Cloud SQL, Cloud Tasks), with Terraform.",[72,91,92,95],{},[54,93,94],{},"Services:"," Firebase Authentication for sign-in, Stripe for memberships and billing, Twilio for text messages and SendGrid for email.",{"title":97,"searchDepth":98,"depth":99,"links":100},"",2,3,[101,102,103],{"id":41,"depth":98,"text":42},{"id":48,"depth":98,"text":49},{"id":66,"depth":98,"text":67},"The member app and staff dashboard for a club that plans a surprise experience for its members every month.","md",true,"work",{"live":109},"https:\u002F\u002Fapp.renaissanceclub.co",{},"\u002Fprojects\u002Frenaissance-club","2024 — Present",{"src":114,"srcDark":115,"alt":116,"og":117},"\u002Fprojects\u002Frenaissance-club\u002Fpreview.webp","\u002Fprojects\u002Frenaissance-club\u002Fpreview-dark.webp","The Renaissance Club emblem: two crossed arrows framing a lotus, crossed axes, a masquerade mask and a yin-yang symbol","\u002Fprojects\u002Frenaissance-club\u002Fog.png",{"title":24,"description":104},[120,121,122,123,124,125,126],"Nuxt 3","FastAPI","PostgreSQL","SQLAlchemy","Google Cloud","Stripe","Firebase Auth","projects\u002Frenaissance-club\u002Findex","2024","xgW17dWszkt7pbipa9Fp6klI8EYaWXl-GqSPe14OiWA",[131],{"path":111,"title":24,"stem":127,"navigation":106,"description":104,"preview":132},{"src":114,"srcDark":115,"alt":116,"og":117},[134,135,136,137,138,139,121,123,140,122,141,142,143],"TypeScript","Vue 3","Nuxt","Pinia","Tailwind CSS","Python","Pydantic","Supabase","GCP","Firebase",1790468886578]