🤔 Inspiration

Have you ever bought a car and then slowly realized… “oh no, this thing is eating my wallet alive”?

You’re not alone. Almost half of buyers feel some level of regret after a car purchase and in Canada it’s even more chaotic: different insurance rules by province, brutal winters, random fees, and prices that make zero sense.

We kept watching friends and family spend weeks in tabs hell: YouTube reviews, Reddit threads, dealer sites, calculators, bank pages… and still feeling unsure. There was no single place that spoke Canadian, understood winter, and actually did the math for you.

So 6ixKar was born: a car-buying buddy that knows about provinces, snow, and your budget and isn’t trying to sell you anything.


🚗⚡ What it does

6ixKar guides you through the Canadian car-buying journey—from “I kinda want an SUV” to “This is the monthly payment and I know exactly what I’m signing up for.”

You can:

  • Chat with 6ixBot, an AI assistant that answers questions like
    “What’s a good AWD under 30K in Ontario?” or
    “Is this a fair price for a 2022 Civic in BC?”
  • Use the Budget Simulator to see the real 5-year cost of owning a car: payments, insurance, fuel, maintenance, and depreciation.
  • Get Canada-specific insights: provincial insurance multipliers, winter readiness scores, and rough income recommendations so you’re not stretching too thin.

In short: it’s like having a very nerdy, very honest Canadian friend who loves spreadsheets and hates buyer’s remorse.


🧨 The problem it solves

Buying a car in Canada is messy: different provincial insurance rules, harsh winters, confusing financing, and tons of hidden costs. Most tools are US-focused or only solve one piece of the puzzle. 6ixKar tackles buyer’s remorse by giving Canadians a single hub that explains options in plain language and runs the math for them up front.

🧱 How we built it

We split 6ixKar into two brains:

Frontend brain (the pretty one):

  • Built with Next.js 15, React, TypeScript, Tailwind, and Framer Motion.
  • A glassmorphism dashboard, animated gradients, and tabbed layout for Chat vs Budget Simulator.
  • Clerk handles sign-up, sign-in, and protected routes so only logged-in users reach the dashboard.
  • Google Gemini powers 6ixBot, turning raw data + prompts into conversational answers with Canadian context.

Backend brain (the nerdy one):

  • A separate Python FastAPI service that does the heavy lifting:
    • Car payment math
    • 5-year total cost projections
    • Basic ML-style logic for deal scoring, depreciation, and insurance estimates.
  • Uses pandas, numpy, and clean REST endpoints.
  • Deployed on Render, while the Next.js app lives on Vercel. They talk via API routes, with CORS + env vars keeping everything in sync.

Frontend = vibes and UX.
Python = math and logic.
Gemini = the talkative brain in the middle.


🚧 Challenges we ran into

This was not “change a couple CSS variables and call it a day”:

  • Two deployments, one repo. Getting a Next.js app and a Python ML service to deploy nicely on different platforms meant wrestling with root directories, build commands, and start commands.
  • CORS & env variables drama. It worked locally, obviously. Then production showed up and said “nope.” We had to carefully wire NEXT_PUBLIC_ML_API_URL, tighten CORS on FastAPI, and keep Vercel + Render configs in sync.
  • Canadian data isn’t plug-and-play. There’s no magic “give me exact Canadian insurance + winter score API,” so we had to design reasonable models, multipliers, and logic that still feel grounded in reality.
  • Time vs ambition. We wanted it to both look like a fintech product and act like a decision engine. Balancing design, ML logic, and deployment inside hackathon time was… character building.

💡 Accomplishments that we’re proud of

  • We shipped a full end-to-end experience: auth → dashboard → AI chat → ML-powered budgeting, all working together.
  • We actually deployed a Python ML microservice and connected it cleanly to a modern Next.js 15 app—no “runs only on my laptop” energy.
  • The Budget Simulator doesn’t just show a single payment; it breaks down insurance, fuel, maintenance, and total 5-year cost, which is what people actually feel.
  • We made the app feel uniquely Canadian: provinces, winters, and local banks are part of the story, not an afterthought.
  • Most importantly, we built something we’d genuinely want to use before our next car purchase.

🤯 What we learned

  • LLMs are great storytellers, not calculators. Gemini shines at explaining tradeoffs and answering questions, but the actual math should live in Python, with real formulas and models.
  • Deployment architecture matters early. Once you decide “frontend on Vercel, Python on Render,” every design choice after that gets easier (or harder) depending on how clean you set it up.
  • Buyer’s remorse is often just “hidden math.” Once you expose all the costs over 5 years, a lot of “good deals” suddenly don’t look so good.
  • Hackathons are way more fun when you build something that could realistically keep growing after the weekend instead of dying in a GitHub graveyard.

🔮 What’s next for 6ixKar

We don’t want 6ixKar to be “that one cool hackathon project we never touched again.”

Next steps we’d love to tackle:

  • Plug into real Canadian listing data (AutoTrader, Kijiji, etc.) so fair price and deal scores are grounded in live market data.
  • Upgrade the Python ML engine with better models for depreciation, risk, and insurance using more robust datasets.
  • Integrate with real bank + insurance partners to show actual APR offers and quotes—so users can go from idea → approval in one flow.
  • Add user profiles, saved scenarios, and car comparisons so people can shortlist multiple options and revisit later.
  • Explore a mobile-first experience so 6ixKar can be used at the dealership, not just at home on a laptop.

The Canadian car market can be rough. 6ixKar is our way of quietly handing the buyer the playbook the other side has had for years—and making sure their next car feels like a win, not a lifelong “oops.” spiration

Built With

Share this project:

Updates