FrogsDen
Transparent mechanics

How FrogsDen Works

Every mechanic and every algorithm on FrogsDen, published with the actual numbers. If you think something should work differently, propose a change on the Vote page.

01
Mechanic 1

No Suppression

Every post you make goes to every single follower. No filtering, no shadow-bans, no quiet demotion.

When you post on FrogsDen, that post appears in the feed of every single person who follows you. Not a percentage of them. Not the ones an algorithm thinks are most likely to engage. All of them. That's the baseline, and it never changes.

We don't fade your reach because some opaque quality score didn't like it. We don't surface or demote based on hidden signals. Nothing expires. Once you post, it stays up and it stays visible.

The only things that affect how far a post travels beyond your followers are documented in the mechanics below — and you can change them by voting.

Here's the actual feed query. The "following" filter pulls every post from every account you follow, with zero suppression:

src/server/services/feed-builder.tsts
// "following" feed — every post from every person you follow
SELECT p.id, p.created_at
FROM posts p
WHERE p.is_deleted = 0
  AND (
    p.user_id = :viewerId
    OR p.user_id IN (
      SELECT following_id FROM follows
      WHERE follower_id = :viewerId
    )
  )
ORDER BY p.created_at DESC

No scoring. No ranking. No suppression. Every follower's post, in chronological order.

02
Mechanic 2

Organic Spread

A like shows your post to 10 non-followers. A share shows it to 25. Comments do not boost reach.

Your followers already see every post you make (Mechanic 1). Organic Spread is what happens next — it's how your content reaches people who don't follow you yet.

When someone likes your post, it enters the feed of 10 people who share your interests but don't follow you yet. When someone shares it, 25 people see it. Both are non-followers, so you reach new people, not the same circle.

Comments don't add to reach. Engagement bait doesn't pay here.

src/lib/constants.tsts
// Spread algorithm
export const SPREAD = {
  LIKE_SPREAD_COUNT: 10,
  SHARE_SPREAD_COUNT: 25,
  NEW_FROG_LIKE_BOOST: 15,
  NEW_FROG_SHARE_BOOST: 40,
  NEW_FROG_POST_LIMIT: 10,
} as const;
src/server/services/spread.tsts
const limit =
  source === "like_spread"
    ? isBoosted
      ? SPREAD.NEW_FROG_LIKE_BOOST
      : SPREAD.LIKE_SPREAD_COUNT
    : isBoosted
      ? SPREAD.NEW_FROG_SHARE_BOOST
      : SPREAD.SHARE_SPREAD_COUNT;
03
Mechanic 3

Quiet Fade

Each dislike from the same viewer drops that poster's visibility to YOU by 20%. Five dislikes and they're gone from your feed. They never find out.

Dislikes don't punish the poster. They tell the system you want less of them.

  • 1 dislike80% visibility
  • 2 dislikes60% visibility
  • 3 dislikes40% visibility
  • 4 dislikes20% visibility
  • 5 dislikes0%, invisible to you

Only you experience this. They stay followed, they never get notified, they never see a drop. If you start liking their posts again, visibility climbs back up.

src/lib/constants.tsts
// Quiet Fade
export const QUIET_FADE = {
  VISIBILITY_REDUCTION_PER_DISLIKE: 0.2,
  MAX_DISLIKES_BEFORE_INVISIBLE: 5,
} as const;
src/server/services/quiet-fade.tsts
function visibilityFor(count: number): number {
  const v = 1 - QUIET_FADE.VISIBILITY_REDUCTION_PER_DISLIKE * count;
  if (v <= 0) return 0;
  if (v >= 1) return 1;
  return Math.round(v * 10000) / 10000;
}

export function shouldShow(visibility: number): boolean {
  if (visibility >= 1) return true;
  if (visibility <= 0) return false;
  return Math.random() < visibility;
}
04
Mechanic 4

Downvote vs Reach

Spread equals likes minus downvotes, times the multiplier. Net-negative posts get zero further spread. Brigades fail because sources have to be diverse.

The spread formula: reach = (likes - downvotes) × multiplier

Net-negative posts stop spreading. They aren't deleted (see Mechanic 1), they just stop reaching new people.

To prevent brigading, votes have to come from a diverse pool. A coordinated group with the same follows, interests, or geography won't bury a post on their own.

src/server/services/spread.tsts
const post = postRows[0];
if (!post || post.isDeleted) return 0;

// Brain doc: net negative shuts down further spread.
if (post.netScore < 0) return 0;

const isBoosted = post.isNewFrogPost;
05
Mechanic 5

New Frog Boost

Your first 10 posts get a stronger push: 15 reach per like, 40 per share. Then you graduate to the standard 10 and 25.

A new account needs to find its audience before anyone follows it, so the first 10 posts run on bigger spread numbers:

  • Like15 reach (normal: 10)
  • Share40 reach (normal: 25)

The pool of non-followers in each boost scales with the size of the platform. A bigger FrogsDen means a wider introduction radius.

src/lib/constants.tsts
NEW_FROG_LIKE_BOOST: 15,
NEW_FROG_SHARE_BOOST: 40,
NEW_FROG_POST_LIMIT: 10,
src/server/services/spread.tsts
const isBoosted = post.isNewFrogPost;
const limit =
  source === "like_spread"
    ? isBoosted
      ? SPREAD.NEW_FROG_LIKE_BOOST  // 15
      : SPREAD.LIKE_SPREAD_COUNT    // 10
    : isBoosted
      ? SPREAD.NEW_FROG_SHARE_BOOST // 40
      : SPREAD.SHARE_SPREAD_COUNT;  // 25
Why FrogsDen

Four things we promise.

  1. You vote on how the platform works.

    Propose features. Vote on changes to how the platform works. If the community says yes, it gets built.

  2. Your reach isn't suppressed.

    Every post reaches every follower. Every like pushes it to 10 new people beyond them. Every share pushes it to 25. No throttling, no pay-to-play.

  3. Every mechanic is public.

    The mechanics that shape your feed are published, explained, and open to challenge. Nothing hidden.

  4. Your profile actually looks like your own.

    Customise everything. Colours, animated backgrounds, fonts, borders, layouts, and more. Add a retro answering machine for audio messages from friends along with other cool features. Your profile is your space, and your friends see it exactly how you designed it.

No suppression

Likes and shares actually do something.

On other platforms, your posts get buried. Here, every one of your posts gets pushed to the feed of every single follower you have, and every like pushes your post to 10 people who don't follow you yet. Every share pushes it to 25. Real reach, not vanity metrics.

postsomeone likes it10 new people see itif they like it100 NEW PEOPLEand it keeps going

New users get a boost. Your first posts reach people who share your interests. Day one isn't a void.

Like

Likes are anonymous to the public. Nobody can see who liked a post except the author, who gets a notification. Each like triggers spread: the post is shown to 10 people who don't follow the author but share similar interests. Likes are how content reaches new audiences.

Share

Shares are also anonymous to the public. The author sees who shared via notifications, but nobody else does. Each share pushes the post to 25 non-followers. Shared posts do not appear on the sharer's profile.

Dislike

Dislikes are completely anonymous. Nobody ever sees who disliked a post, including the author. Disliking someone's post reduces how often you see their content in your feed (see Quiet Fade above). Collectively, dislikes also reduce a post's spread to new audiences.

Comment

Comments are public. Your name is on them. Comments do not boost a post's reach. This is deliberate. On other platforms, angry comments make posts go viral. Here, only likes and shares spread content. Comments are for conversation, not amplification.

Bookmark

Bookmarks are completely private. Save a post to come back to it later. Nobody can see what you've bookmarked, not even the post author.

Ribbit

Ribbit is a profile action, like the old Facebook Poke. Visit someone's profile and click Ribbit to let them know you're thinking of them. They'll get a notification with the option to Ribbit you back. You can only Ribbit someone once until they Ribbit you back. Manage your Ribbits in Messages.

FrogsDen is the most customisable social platform there is. Every visual element of your profile and your browsing experience is yours to set. Open Settings > Customise to start.

12Accent coloursplus a full custom hex picker
12Border effectsanimated glows: Travelling, Heartbeat, Shimmer, Dash March…
10Card stylesdecorative borders: double line, brackets, notched…
10Shape presetsradius, borders, and shadows on every element
46Backgrounds23 patterns plus 23 animated scenes
10Fontsclean, mono, and handwritten options
12Post backgroundsthe dark colour behind your post cards
3Profile layoutsstandard, wide, or compact

Theme your timeline

Turn this on and your chosen theme colours the whole site for you, not just your profile. Your accent colour, background scene, border effect, and post backgrounds follow you across the feed, messages, notifications, and every other page as you browse. Turn it off and the rest of the site stays on the default look.

Favourite quote

Display a quote you love at the top of your profile, with an author credit and your choice of font, including the handwritten and elegant ones. It sits above your Profile Song.

Currently & Mood

Show what you are watching, playing, reading, listening to, and working on, with cover art for each, up to five entries per type. Set a mood emoji from roughly 3,600 options so visitors see how you are feeling the moment they land.

Over 5.9 billion unique profile combinations from presets alone.

Add the custom colour picker and that becomes more than 8.9 quadrillion. Bring mood emoji into it and you are into the tens of quintillions. Every option is live today. No two profiles need ever look the same.

Your feed

Control how you consume.

A feed built on transparent mechanics. No “recommended for you.” Just your timeline, the way you set it up, with your colours, your background, your style.

Chronological. Always.

Sort by newest or oldest. Filter by past day, week, month, or all time. Your feed, your timeline.

Time windows

Past day. Past week. Past month. All time. Scroll back as far as you want. Nothing expires.

Split view

Desktop: run two feeds side by side. Your main feed plus a different filter. Two perspectives at once.

Commented

One tap to find every conversation you've been part of. Never lose a thread again.

Audio

Say it with your voice.

10 seconds. One reply. Make it count.

Audio Posts

Record a 10-second voice post. No typing, just your voice.

The Speakeasy

Browse and listen to voice clips from across FrogsDen. A feed of 10-second stories.

One Reply

Every person gets one 10-second reply per audio post. The author gets to reply back once. Quality over quantity.

Explore

The Hub.

One place to find everything. Communities, anonymous spaces, audio, cooking, reading, pets, and more.

Swamps

Community groups built around shared interests. Open to everyone, no karma gates. Shared photo albums and their own timeline.

Book Club

Share what you're reading with cover art, your thoughts, and a rating. Book posts appear on the main timeline so everyone can discover new reads.

Voices From The Shadows

A space for the things you carry alone. Share confessions, secrets, and hidden truths, completely anonymously.

The Speakeasy

10-second voice clips. Listen, speak, and browse what people are saying.

The Kitchen

Share what you're cooking or eating. Post a photo, the dish name, and whether you made it or found it. Food posts appear on the main timeline.

Pet Corner

Show off your pets. Share photos, tell their story, and browse pets from across the community.

Time Capsule

Seal a post for 1 to 3 years. When it opens, it posts automatically. A message from your past self.

Pixel With Me

Collaborative pixel art. Pick a canvas, place your pixels, and create something together.

Live Events are real-time audio rooms built into the platform. Host a conversation, invite speakers, share your screen, and let listeners join from anywhere. Everything happens inside FrogsDen. No third-party app, no separate link.

For listeners

Live chat

Chat alongside the audio in real time. Hosts can pin messages, enable slow mode, and assign chat moderators.

Raise your hand

Request to join the stage. The host sees a queue and can bring you up to speak. A mic test runs first so you know your audio works.

Screen sharing

Hosts and co-hosts can share their screen with audio. Watch a demo, a presentation, or a live code session while the conversation continues.

Browse while listening

Minimise the event and the audio keeps playing in a sidebar while you scroll the feed, check messages, or visit profiles. Click back in any time.

For hosts

Team roles

Assign co-hosts, content managers, and guest speakers before or during the event. Each role has the right level of control.

The vault

Drop links into the vault before or during the event. Listeners can open them in a new tab without leaving the audio. Share resources, references, or anything relevant in the moment.

Automatic recording

Events are recorded automatically if you enable it. When the event ends, the recording is saved to an archive page that anyone can listen back to or download within 7 days.

Auto-failover

If the host disconnects, the co-host is automatically promoted. The event keeps running. No dead air, no confusion about who is in charge.

Built-in promotion

Every event shows in the upcoming events list and is advertised across attendees' profiles. Live events appear in the sidebar and navigation site-wide so your audience finds you without you having to share a link.

Events also include RSVP with calendar reminders, a wind-down period after the event ends where chat stays open, and full analytics for hosts after the event wraps.

Want the full breakdown? See how we have changed the game →

Swamps are topic-based communities inside FrogsDen. Think of them as public rooms that anyone can walk into. Open to everyone, no karma thresholds, no waiting list. If the topic interests you, you join.

Shared timeline

Every swamp has its own feed. Posts tagged to a swamp show up there and in your main feed. One post, two places.

Photo albums

Members can upload photos to the swamp's shared album. The cover photo becomes a collage of everything the community has shared.

Open membership

No gatekeeping. See a swamp, join it. Leave whenever you want. Your main feed has a "My Swamps" filter so you can view only swamp content when you feel like it.

Community-requested

New swamps are created by request. If there is a topic you want a space for, ask and it gets made. No bureaucracy.

Every feature, explained in one line.

Custom accent colour

Pick any colour. It themes your profile and your entire browsing experience.

Animated backgrounds

50+ scenes from aurora borealis to pixel rain. Canvas-rendered, 30fps.

Profile Song

Pin a Spotify track with a note about why it matters to you.

Currently...

Show what you're watching, reading, playing, listening to, or working on.

Interests

Tag yourself so people with shared interests can find you.

Favourite charity

Spotlight a cause you care about right on your profile.

Pinned post

Put your best post at the top of your profile.

Mood emoji

Set a mood that visitors see when they land on your profile.

Layout options

Default, grid, or showcase. Choose how your profile is structured.

Recommend someone

Suggest a person your profile visitors should follow.

Theme your timeline

Your accent colour, background scene, and post backgrounds follow you across every page.

Split view

Two independent feeds side by side on desktop.

Time filters

Past day, week, month, or all time. Nothing expires.

Chronological sort

Newest or oldest. Your choice. No algorithm.

Commented filter

Find every post you've contributed to.

Swamp communities

Topic-based groups with feeds, photo albums, and open membership.

Community voting

Propose changes. If 250 people back it, it goes to a vote.

Transparent mechanics

Every rule regarding your reach, published.

Quiet Fade

Gradually mute people without unfollowing. No confrontation.

Anonymous engagement

Likes and shares are private. Dislikes are invisible.

Post backgrounds

Choose a dark background colour for your post cards. 12 presets or pick your own.

Currently cover art

Upload album art, film posters, or book covers for each Currently block.

Themed everywhere

Your background scene and accent colour follow you across feed, messages, and notifications.

Your platform, your rules

Don't like something? Change it.

Want a new feature? A fun addition? Something nobody else has thought of? Any user can propose it. If enough people back it, the community votes. If it passes, we build it. Six stages, fully transparent. This is your platform to shape.

STAGE 01

Propose

Write a markdown doc with a title, summary, and (optional) draft policy text. Drop it in the Propose stream. Edit it until it moves to the next stage.

any user · zero gatekeeping
NEW PROPOSAL
draftedpolicy

Sample proposals (illustrative)

Example proposal

Add estimated read time to long posts

Show how long a post will take to read before you open it.

YES 78%
NO 22%
Example proposal

Let users pin 3 posts to their profile

Pick your best posts and keep them at the top of your profile.

YES 91%
NO 9%
Your feed, your boundaries

Only see the content you want.

We put the power back into your hands. Quiet Fade makes people slowly disappear that you don't want to see, or you can just block them outright.

QUIET FADE

Quiet Fade.

Every time you dislike someone's post, you see 20% less of them. Keep going and they fade from your feed entirely. No unfollowing, no notification, no confrontation.

BLOCK

Block.

Block someone and they vanish completely. They can't see you, you can't see them. Gone from your feed, search, messages, everywhere.

The details.

  • Swamps

    Join Swamps around topics you care about. Open to everyone, no karma, no gatekeepers.

  • Anonymous engagement

    Likes, shares, and dislikes stay anonymous to the public. Only the post author sees who liked or shared their post. Dislikes are fully anonymous, always.

  • Frogtags

    Tag your posts so the right people find them. Like hashtags, but community-maintained.

  • Community flags

    If something looks off, the community can flag it. Not a takedown. A second look.

  • The code is public

    The rules that shape your feed are published. Read them, challenge them, suggest changes.

  • New user visibility

    New users aren't invisible. Your first posts get shown to people with matching interests.