showcase

ThankSites

year
2026
role
front-end, back-end, ui/ux, product
based
prishtine, xk
  • next.js
  • react
  • typescript
  • prisma
  • postgresql
  • paddle
  • mailjet
  • three.js
  • gsap
  • tailwind

front-end, back-end, ui/ux, product

View website

available for freelance work

social

twitter / instagram / facebook

ThankSites is my own product. Instead of a card, you send someone a small animated website made just for them: a birthday surprise, a Valentine's letter or a New Year message, with their name, your words and, on the premium templates, your photos and music. It takes a few minutes, costs a one-time $2.99 to $7.99, and the site stays up for good. I designed and built all of it, from the templates to checkout and email delivery, in Next.js, TypeScript, Prisma and PostgreSQL.


Templates

Templates are grouped by occasion, and each one has its own page with a live preview, the price and the list of things you can change.

Each template is data, not a separate page. A template stores its screens and editable fields as config, so the editor, the preview and the published site all read from the same definition. Adding a new template is mostly writing that config and the animation, and the rest of the flow picks it up. The most involved one is the 3D Rose Love Letter, a rose built with Three.js that turns as you scroll and opens into a handwritten letter.


Making a site

The editor walks through the template one screen at a time: the intro, the greeting, the message and so on. The preview on the left updates as you type, so you see exactly what the recipient will see before moving on.

When the steps are done, a full preview shows the finished site in a browser frame before anything is paid for.


Checkout and delivery

Payment goes through Paddle. A site stays a draft until Paddle's webhook confirms the payment, and the webhook checks both the signature and the source IP before it publishes anything. After that the site gets its own link, and it can still be edited later through a private management link.

Sites can also be scheduled. You pick the recipient's email, a date and a time, and the delivery is stored in UTC together with the sender's timezone, so a message set for midnight arrives at midnight where they are. A cron job picks up whatever is due and sends it through Mailjet, keeping track of attempts and errors so a failed send can be retried.

work

  1. Lawfty D2C Client Facing Project

    Direct-to-consumer campaign landing pages running on the Sanity CMS I built. Marketing assembles a page from modules and A/B tests whole layouts through the experiments layer, no developer needed.

    next.jstypescriptsanity.iographql+32026new york, us
  2. Lawfty Firms Project

    Campaign sites for partner law firms, all from one content source. Each site reads its own colours, logo and copy from the campaign config, so launching a firm is a content job instead of a new codebase.

    next.jstypescriptsanity.iographql+32026new york, us
  3. Lawfty 2.0 Internal Dashboard & Design System

    Lawfty is the data-powered personal injury law firm that offers a clear advantage in uncertain times nationwide, since 2013.

    reacttypescriptlangchainrag+82025/2026new york, us
  4. DebugCon I & II

    DebugCon is a coding conference for developers held in Prishtina, Kosovo. I was tasked to design and develop their website, also helped with branding and marketing.

    jssasshtml5figma+22022auckland, nz
  5. Underwriting

    The rebuild of redIQ, a multifamily underwriting platform, as Radix Underwriting. Deals, rent rolls, operating statements and valuations in one React app, with a new design system underneath.

    reacttypescriptprismapostgresql+12026remote
  6. ThankSites

    My own product: personalised birthday, Valentine's and New Year websites you make in a few minutes, pay for once and send as a link, or schedule to land in someone's inbox at the right moment.

    next.jstypescriptprismapostgresql+32026prishtine, xk
  7. InstaListDiff

    A free tool that shows who doesn't follow you back on Instagram, using the data export Instagram gives you. Everything runs in the browser, so nobody has to hand their login to a third-party app.

    javascriptvitetailwind2024prishtine, xk
  8. EpicFreeGamesMail

    EpicFreeGamesMail is a tool that sends you an email every time a new free game is available on the Epic Games Store, built with React and TypeScript.

    nodegithub actionsmailjetsupabase+12025prishtine, xk
  9. Airways New Zealand

    Airways is New Zealand's leading air navigation service provider. I was tasked to design and develop their air trafic controller manuals and showcasing a new way of how to navigate through them.

    jssasshtmlaxure rp7+22021auckland, nz
  10. 99urban

    99Urban is a streetwear brand, built by me, using Shopify. I designed and developed the website, worked with marketing and dove into the world of SEO and Dropshipping.

    reactshopifyliquidjest+22021auckland, nz
  11. Mailfomo

    Mailfomo is a daily top links aggregator, sending you the most popular links of the day to your email. The goal was to create a simple and easy to use app, with a focus to never miss the latest news.

    reacttypescriptnodesass+42023sydney, au
  12. Prime Panels Showroom

    Prime Panels is a leading manufacturer of melamine panels. I was tasked to design and develop their showroom website. The website was shown at the Auckland Home Show 2022.

    jshtmltailwindfigma2022auckland, nz
  13. NZ Research Information System

    NZRIS is a web application for the New Zealand government. I was tasked with creating a digital solution for NZRIS, a new online hub dedicated to the research, science, and innovation sector.

    jshtmlcssuxpin+22021auckland, nz
  14. WilsonArt

    Wilsonart, a leader in decorative laminates, engaged me to design and develop their website for the New Zealand market. The website is built with Umbraco CMS, and it's fully responsive.

    javascripthtml5sassai+22022auckland, nz
  15. Kablamo

    Kablamo is a digital product and innovation company. One of the projects I've worked on is a known bank in Canada, an app for iOS and Android built with React Native.

    reactreact nativetypescriptrquery+22024sydney, au
  16. Lobster & Tap

    Lobster&Tap is a seafood restaurant in Auckland, NZ, Lobster&Tap engaged me to design and develop their Kiosk web-app which allows customers to order food and drinks.

    javascriptbootstrapfigmaai+22022auckland, nz
  17. Daruma

    Daruma is a Japanese restaurant in Auckland, NZ. I was tasked to develop their Kiosk web-app which allows customers to order food and drinks.

    javascriptbootstrapumbracofigma+22022auckland, nz
  18. Linea Del Plata

    Linea Del Plata is a shipping company made up of private business groups with a long history in the maritime industry. I was tasked to design and develop their booking platform.

    jshtmltailwindfigma2022auckland, nz
  19. Scanatrax

    Scanatrax is a static pallet and cargo dimensioning system that delivers fast, accurate and reliable results, with full after-sales support. I was tasked to design and develop their website.

    .netc#javascriptsass+42021auckland, nz
  20. Flatmately

    Flatmately is a flatmate finder app, built for New Zealand and Australian market. I was tasked to design and develop their website, and also helped with branding and marketing.

    jshtmltailwindfigma2021auckland, nzcase study incoming
  21. NxtStep

    NxtStep is a job board for students and graduates. I was tasked to design and develop their website, and also helped with branding and marketing.

    jshtmlbootstrapsketch+22021auckland, nzcase study incoming
  22. Yoga With Kassandra

    Yoga With Kassandra is a yoga teacher and content creator. I was tasked to design and develop her website and courses platform while I was working at VidApp.

    jshtmlsasswordpress+22020auckland, nzcase study incoming
  23. Tourism New Zealand

    Tourism New Zealand is a website I've built to showcase my skills utilising JavaScript, HTML5, CSS3, SASS, Bootstrap, Sketch. I was tasked to design and develop their website.

    jshtml5css3sass+22020auckland, nzcase study incoming
  24. Renkon

    Renkon is a Japanese restaurant, I've pitched the new website and design for the ordering app. I used JavaScript, HTML5, CSS3, SASS, Handlebars and Bootstrap to build the website.

    jshtml5css3sass+32020auckland, nzcase study incoming
  25. DotaPopQuiz

    DotaPopQuiz is a quiz app built with JavaScript, HTML5, SASS, PHP. It was built as a fun project to make a game to increase brand awareness and to learn more about JavaScript and PHP.

    jshtml5css3sass+32020auckland, nzcase study incoming
  26. VidApp

    VidApp is a video streaming platform. I was tasked to design and develop their website and the platform where users would publish their customised app for iOS and Android.

    wordpressjshtmlsass+22019auckland, nzcase study incoming