Your sport.
Your club.
Your rivals.
Six racket sports, one app — made in Perth by players sick of dead group chats. Find a rated hit near you, join a club, and climb the local boards. No ghosting, no mismatches — free during beta.
Free during beta · Perth beta details →


Join a Club
Members, chat, courts & socials — your local crew in one place.
Many Sports
Tennis, Pickleball, Padel, Badminton, Squash, Ping Pong.
Leaderboards
Climb local, friends & global. Singles and doubles.
Social Groups
Host, fill the roster, then fair shuffled rounds for the crew.
Map Nearby
See players, clubs and open posts on the map around you.
Quick Match
Go live and get matched with a nearby rival at your level.
The Problem
Finding a good rival shouldn't be harder than beating one.
Clubs
Your crew's
home base.
Create or join a club for your sport and area — like Capsule Labs Table Tennis. A cover, a members roster with live ratings, a shared feed, group chat, pinned announcements and hosted socials — everything the crew needs in one place. Courtside? Just Play Now — scan a clubmate.


Inside a club





Multi-sport
Not just tennis.
Six sports.
Switch sport in a tap. Each one keeps its own rating, leaderboard and match history — so your pickleball climb stays separate from your tennis grind.


Quick Match
No plans? Go live and get matched.
Not everyone's in a club session — so tap go-live and Frienemi pairs you with a nearby player in your sport and rating band. First accept wins, with a 60-second confirm. It keeps hunting in the background, so lock your phone and we'll ping you the moment someone's on.
- A live pool within 5 km — who's up for a hit right now
- Matched within your rating band — never a mismatch
- Works across every sport you play
- 60-second confirm window — no ghosting
Play Now
Already courtside? Bump phones and play.
No posts, no waiting. You're both on the court right now — open Play Now, scan each other in, and it's just the game. Play it out, drop the final score, and it goes straight to the record— ratings move the second it's saved.
- Scan a friend's code — no usernames, no adding
- Casual or Competitive — you choose before the first point
- One taps the score, it lands on both records instantly
- Competitive results move your live ELO right away


Create a Match
Set it up
exactly your way.
Two ways to make it happen. Post an open match across up to three areas and let nearby players join — or pick a specific match and challenge one player at a fixed time and place. Singles or doubles, casual or competitive.
- Open post: cover multiple suburbs, set your days & vibe
- Specific match: challenge a player, lock time & court
- Coordinate the details in chat once someone's in
- Exact location stays hidden until you both confirm


Chat & Coordinate
Sort the where & when. Right inside the match.
The second a match locks, you get a private match chat — no swapping numbers, no scattered group threads. Agree on the time, pick the court, and the exact location lives right at the top of the conversation so nobody's lost on match day.
- Private chat per match — talk only to who you're playing
- Location & time pinned to the top — tap to view the spot
- Set or edit the court and time together, then lock it in
- Exact address stays hidden until the match is confirmed


On The Map
See who's playing, right around you.
Open the map and every rated player and open match nearby shows up where it actually is. Tap a pin to preview the match — format, vibe, host rating — and request to join in a tap.
- Live pins for players and open posts in your area
- Filter by distance, time, format, and vibe
- Preview a match before you commit — host rating included
- Approximate area only until the match is locked




Leaderboards & rating
Climb the boards.
Defend your spot.
Local, friends and global boards — singles and doubles, side by side. Every competitive win moves your live rating, and the history chart shows exactly how you got there.
- A separate rating & board for every sport
- Local, friends, and global views
- Podium for the top three — live wins and losses
- Challenge anyone above you in one tap
Everything Frienemi does
Four pillars. One game that always feels fair.
From finding a hit to defending your spot on the board — every feature sits under Play, Compete, Connect or Trust.
Play
Get on court, fast.
Every way to get a game — right now or planned.
- Quick Match — Go live and get paired with a nearby rival at your level.
- Play Now — Already courtside? Bump phones, scan in, keep score.
- Create a Match — Post an open slot or challenge one player at a set time.
- Social Groups — Host a session — the app runs fair shuffled rounds.
Compete
Rating & rank.
A live rating you can't fudge, and a board to climb.
- Live ELO — Every player carries a real rating. UTR optional.
- Confirmed scores — One enters, the other confirms — no disputes.
- Leaderboards — Local, friends and global — singles and doubles.
- Challenges & history — Call out anyone above you; track every move.
Connect
Clubs & community.
Your crew, your courts, your sports — in one place.
- Clubs — Members, feed, chat, announcements and hosted socials.
- Map nearby — Players, clubs and open posts on the map around you.
- Six racket sports — Tennis, Pickleball, Padel, Badminton, Squash, Ping Pong.
- In-app chat — Sort time, court and who brings balls — all in-app.
Trust
Fair play & safety.
Fair matches, private by default, no ghosting.
- Private location — Approximate area only until you both confirm.
- Accept-to-lock — A 60-second confirm window keeps flakes honest.
- Reliability score — No-shows hurt access; showing up earns trust.
- Block & report — One tap to keep your games clean.
Trust & Safety
Confirmed rivals. Fair matches. Your location, your call.
Location stays private
Approximate area only until both players confirm. No broadcasting your home club.
Every opponent is rated
Live ELO on every player — no mystery opponents, no sandbaggers. UTR optional.
No-show accountability
Confirmed matches lock in. Bail often and your rating + access take the hit.
Score disputes, solved
Both players confirm before a result counts. One-sided entries never touch your rating.
A Closer Look
Built pixel-by-pixel in light and dark.
You're viewing Light mode — flip it and the whole page follows.

Discover feed

Quick Match

Match found

Match detail

Match chat

Coordinate

Leaderboard

Your profile

Rating history

Map nearby

Notifications
Our goal
Connecting players, made effortless.
Make finding a game as easy as it can be, give clubs the freedom to run any format they want, and bring back the joy of competing — a live rating and a leaderboard to climb. Tennis, or any racket sport. Built by Short Tec in Perth, shipping in the open.
A note from the founder
Hey — I'm Long, a Perth player. I built Frienemi because finding someone free to hit with, nearby and at my level, was always the hard part. It's a free beta right now, and honestly it gets better every week because of what players tell me.
If you give it a go, tell me what's missing — I'm building this for us, and your feedback shapes what I make next.
— Long, building Frienemi from Perth
Built in the open
You tell us what to build. We ship it and show our work.
Request features, report bugs, and upvote what matters. Watch it move across the roadmap and land in the changelog — the whole loop is public.
Frequently Asked
The short answers.
Wait — Frienemi?+
Friend plus enemy. Tennis is the weird sport where the person you most want to beat is the one you most want to keep showing up. Frienemi is built for that feeling — the rival you high-five at the net, then try like hell to beat next weekend.
Do I need a UTR to play?+
Nope. We give every player a live ELO rating. Four quick onboarding questions give you a starting ELO, and it moves up or down with every Competitive match — beat someone above you, you climb. If you happen to have a UTR, you can add it as a hint for a sharper first seed — but it's purely optional. The ELO system stands on its own.
What's the difference between Casual and Competitive?+
Casual is just for fun — the result doesn't move your rating or leaderboard position. Competitive matches count toward your live rating, stats, and city ranking. Pick Competitive if you want bragging rights.
How does Quick Match actually work?+
Press start. Every available Frienemi in your rating band gets pinged at once. First to accept locks the match. How long it takes depends on who's around — peak hours and busy clubs fill faster, off-peak you might leave it running. Either way, don't babysit the screen. Lock your phone, switch apps, do whatever. The search runs in the background and we push a notification the second a Frienemi accepts. Just don't force-close the app.
What stops someone from ghosting me?+
Confirmed matches are binding. Repeated no-shows hurt your in-app reliability score, throttle your Quick Match access, and can lead to account restrictions. Flake on the court, not on Frienemi.
Is it free?+
Free during the beta. After launch there'll be a free tier that covers core matchmaking — we'll give plenty of notice before anything changes.
Which cities are live?+
We're rolling out city by city. If Quick Match doesn't find a Frienemi in your range, you can still create and browse open matches to help seed your area.
Still curious? Email hoanglongnt01@gmail.com or hit the contact page — a human replies.

Ready to Play?
Your next Frienemi is one tap away.
Four quick questions give you a starting ELO, then hit Quick Match and go find today's rival.
Beta — Invites Rolling Out · Free During Beta
Social Groups
Host the hit-around.
We shuffle the rounds.
Stop herding the group chat. Create a session, share it until the roster fills, then let Frienemi run fair rounds across your courts — with a preview you can tweak before anyone steps on court.
From create to court-side
Step 01
Host a session
Name it, set location, time, courts, and max members. Open join or approve each request.
Step 02
Share & fill the roster
Share the group link — joiners see your note, courts, and who's in until every slot is taken.
Step 03
Preview the shuffle
Fair pairings each round. Tap to swap players on any court, then start when you're happy.
Step 04
Know your court
When the round goes live, each player sees who they're on with and which court — scores sync after.