Live Project · Dating Game

KickOrKiss

Dating, but funny. Fling a card left to kick it, or right to kiss it.

A match is two people who kissed each other — nothing else. There is no algorithm deciding who succeeds, and the moment the second kiss lands a private chat opens.

A kick sends a cartoon boot through the card. A kiss lands giant lips on it. Both move a public reputation score, which is the joke and the game at the same time.

At a Glance

100

Free swipes a day

2

Kisses make a match

3,000+

Cities in the deck

18+

Adults only

How it plays

Three steps, and the third one is the point.

1

Build your card

Sign in with a Lumora account and add photos, an age, a city and a handful of interests. Onboarding is finished when the card is worth judging, not when a form is technically complete.

2

Pass the verdict

Left is a kick, right is a kiss, and the deck leads with people near you. A hundred swipes a day is the free allowance, and the counter resets at midnight UTC.

3

Match and chat

Kiss someone who kissed you and the chat opens straight away, with typing dots and read receipts. Take your kiss back and the match dissolves honestly, on both sides at once.

Power-ups

Three paid moves, each one a decision for somebody else.

Power-ups are bought with Lumora credits — the same balance every product in the network shares, with 20 credits included free every month.

Kick Shield

5 credits

For one hour, an ordinary kick bounces off your card and is never recorded. Anyone who wants through has to either kiss you or pay for a Super Kick, so the shield keeps costing its attacker rather than its owner.

Kiss Bomb

1 credit

A missile of lips, triple reputation, and a gold flag on your card at the front of their deck. Bombing somebody you have already judged charges nothing and says so, rather than taking the credit in silence.

Super Kick

1 credit

Glass cracks, holds for a beat, then falls apart. It is the one thing that goes through an active Kick Shield, for that single verdict and that one attacker, at triple the usual swing.

Credits, invoices and plans live in one place for the whole network, at the shared Lumora account centre. There is no separate wallet inside the game.

Safety

Leaving a conversation is never a paid move.

Adults only. An age outside 18 to 99 is rejected outright rather than quietly corrected to something allowed.

Unmatch works through a shield. A Kick Shield stops kicks, and it must never trap somebody inside a chat.

Blocking is symmetric. Neither of you appears in the other's deck again, in either direction, whoever pressed the button.

Photos are stripped on your device. Every upload is resized in the browser first, which removes the location data a camera writes into the file.

House cards are labelled. The deck is topped up with house cards so a small city still plays, and each one says so on its face.

Nobody is verified. There are no identity documents and no background checks here, so meet strangers the way you would from anywhere else on the internet.

Engineering note

There is no matches table.

A match is not a record that gets written when two kisses meet. It is a query, and the reciprocal pair of kisses in the swipe log is itself the match, re-checked on every chat request.

That one decision is why unmatching cannot leave a stale row behind, why a block takes effect in both directions immediately, and why the unread badge can never advertise a conversation the inbox will not show. Every surface that counts messages runs the same check.

Front end and API

One worker

Install path

No app store

Automated tests

120 assertions

Built with

A game that ships as one worker.

The cards, the chat, the photo store and the API all run on Cloudflare, behind the same single sign-on as every other Lumora product.

Cloudflare Workers Hono React Framer Motion D1 R2 TypeScript Progressive web app
See it live

Somebody is about to get kicked.

Sign in, build a card and start dealing. The first hundred swipes are free every day, and nothing here needs a download.

KickOrKiss is entertainment-first dating for adults. Nobody's identity is verified and no background checks are run, so treat every stranger here the way you would any other.