Skip to main content

Product at Flokk

Flokk is where clubs post group rides and runs, and where people find and join them.

For how it’s built, see engineering at Flokk.

Who Flokk is for

  • Clubs

    Volunteer-run clubs, shops and brands host rides and runs that anyone can join. Flokk started at Oslo Dawn Patrol, whose plans were spread across Strava, Facebook and Instagram.

  • Riders and runners

    People find events near them, join, and get what they need to show up: the time, the place, the route and any changes.

  • No activity tracking

    Flokk doesn’t record activities. Strava already does that, and an event links to its route in any planning tool.

Clubs have admins, organisers and followers.

Flokk started with one kind of host: a person. Clubs added a second kind. A club hosts events, but it also needs things a person doesn’t, like a team, branding and repeating events.

The clubs on Flokk run open rides and runs, so a club has no members. It has admins, who run the club, organisers, who run its events, and followers, who hear about them. That one rule settled a lot of later questions, like who can edit an event and what happens when the last admin wants to delete their account. They have to hand the club over first.

The person who creates an event is kept apart from who hosts it. Events and app versions already in the stores kept working, and it later made co-hosting cheap to build.

Co-hosts join through an invite link.

A shop, a brand or a rider with a following often wants to host a ride together with a club. Flokk does it the way Facebook co-hosting and Instagram collab posts do. There is no list of clubs to search. A club shares an invite link, and whoever gets it accepts.

Only a club can start a co-hosted event, but it can invite another club or a single person. A link works once and expires after 48 hours. Someone who runs several clubs picks which one accepts, or accepts as themselves.

The first version only adds co-hosts. Removing one or handing over an event can come when someone needs it.

The message board is a notice board, not a chat.

Anyone can ask the hosts of a club event a question before it starts. The host decides what to answer, and only answered questions show on the event page. A host can also post a message with no question, like a new meeting point.

There are no threads, follow-ups or edits, and the board closes when the event starts.

Full events have a waitlist.

When an event is full, people can join the waitlist. When a spot opens, the next person moves up and is told straight away. People on the waitlist go before anyone who taps join at the right moment.

A spot opens in more ways than someone leaving. The host can raise the limit too, and every change that frees a spot moves the waitlist up the same way.

Lowering the limit never removes anyone who has already joined.

Reminders arrive while they can still help.

Everyone who joined gets a reminder about a day before the event.

Joining less than a day before doesn’t trigger one, so a reminder never arrives right after joining. The message names the weekday and time instead of saying “tomorrow”, because a late reminder would make that wrong.

Moving the event a little sends the usual update, not a second reminder. Moving it more than a day away means a new reminder later.

Every notification is kept in a feed.

Every notification lands in a feed, pushed or not. Muting a club or a kind of notification stops the push, but the feed still has everything.

Opening the feed doesn’t mark everything as read. Each item keeps the wording it was sent with, like the push on the lock screen, even if the event is renamed later.

Repeating events keep their local time.

Club rides and runs often happen at the same time every week, so a club event can be repeated weekly or monthly for up to six months.

“Every Tuesday at 18:00” means 18:00 local time, so the ride doesn’t move an hour when the clocks change.

Each repeat is a normal event. Cancelling one week for rain leaves the rest alone, and a cancelled event can still be repeated. A club can give each one a cover picked at random from its own public photos of the same sport, so a running photo never ends up on a ride.

What Flokk doesn’t do

  • Payments

    Membership fees, ride fees and travel costs are the host’s business. Flokk helps people find and join rides, and handling money would turn it into something else.

  • Local transport

    Connecting to Oslo’s public transport would mean upkeep for an integration that stops at the city limits. Getting people to the start is also the host’s concern, for the same reason as payments.

  • Other sports and other kinds of events

    Flokk is for cycling and running. Skiing, climbing or a bike repair class would each pull the product and the work in a new direction, and the aim is to do one thing well.

  • Phone numbers

    Hosts reach participants through the event. Phone numbers would move the conversation out of Flokk, where a text from an unknown number could be about anything, and a club would become one organiser messaging people privately.

  • Memberships

    Associations with members, fees and boards already have apps built for them. The clubs on Flokk run rides anyone can join, and managing members is up to them.

Smaller calls

  • Ongoing-event bar

    During an event someone has joined, a bar at the top of the app leads straight back to it, for the rider who has dropped off the back and needs the route. It can’t be dismissed, and if anything fails it just doesn’t show.

  • Location fallback on the web

    On the web, events near you start from the browser’s location, then a rough guess from the IP address, then a spot picked on the map. Saying no to location access still shows events.

  • Buttons and copy from the server

    The server says what each person can do and what the buttons say, so an event never shows a different button or count on the web than in the app.

  • “You’re hosting”

    Older app versions showed co-hosts a greyed-out “Join run” button. It now says “You’re hosting”, without changing the layout of builds already installed.

  • Deleted events and accounts

    A deleted event says it was deleted instead of acting like it never existed. Upcoming events with participants are cancelled, so people are told. Replies to someone who deleted their account stay on the board.

  • Linked sign-in methods

    Linking Apple, Google or Vipps to an account never merges two accounts. If a method already belongs to someone else, Flokk says nothing about that account.