From a pin on the map
to a place in the row
How a masjid finder became a community app built around the masjid: the problems we found, the decisions we made and why, told with the app's own screens and parts.
First Saff began on 5 October 2026 as Masjid Finder: find the nearest masjid and its prayer times. Within a month it had a new name and a wider idea.
It is now a community app built around the masjid. Prayer times and the map are where it starts. Around each masjid live its classes and events, help nearby such as janazah services and food banks, questions, calls for volunteers, fundraiser notices and the people who run it, all kept right by the people who pray there.
Where do I pray, and when?
Harder than it should be.
Finding a masjid nearby and the right jamaah time today still means a forwarded picture, a paper notice on the wall, or a pin on a map with the wrong details, or none at all.
1:30
A masjid is a community, but its life is invisible online
The Saturday class, the janazah that needs hands, the food bank in the basement, the roof fund. They live on WhatsApp groups and paper, so you only hear about them if you already know someone.
help someone reach the nearest jamaah they can still make, and see the life around each masjid, when most of the information doesn't exist yet?
268,703 masjids on the map.
Very little to trust.
We started from open map data and imported 268,703 masjids. An audit on 11 October 2026 showed how thin the details are once you look past the pin.


Three of the five nearest were simply called "Masjid"
And none of them had a confirmed time. A list that looks complete would have been a lie, so the app says what it knows and what it doesn't.
- Say what's estimatedTimes worked out from the adhan are marked "estimated" until someone who prays there confirms them.
- Say when it was checkedA masjid's times show when they were last checked.
- Make confirming one tapAnything not confirmed yet carries a strip with "Confirm" and "Not right".
The decision the audit forced: the app can't just show data, it has to help people make it right. That is why it is built around the community confirming things.
Six people we keep
in the room
Not research participants and not made-up quotes: the people we picture whenever a decision is close, what each of them needs, and what we built for them.
The traveller
In a city they don't know, with a prayer coming up.A sister looking for a space
Wants to know before she sets out.The committee member
Keeps the noticeboard and the group chat going.The organiser
Runs a youth circle, a class or an iftar.The newcomer or revert
New to the area, or new to the faith.Nine rules we
design by
Written down early and checked on every screen. The language borrows the craft of Yandex Maps, studied from 91 current screenshots, but not its brand.
The map is the canvas
A full-screen map with a small white sheet: search, filter chips and the next prayer. Everything else is one swipe away.
Blue means act
One blue button per screen. Secondary actions are tinted, neutral ones grey, selected chips near-black.
reading
labels
titles
Middle weights only
Anek Latin 400 for reading, 500 for labels and numbers, 600 only for titles. Nothing lighter, nothing heavier.
Flat glyphs, two tones
Hand-drawn on a 24-unit grid. The second tone is the same colour at 38%, so one colour gives depth. No 3D art.
Fewer words
One-word labels, short titles, no explaining paragraphs. A grey second line only when it adds a fact.
Dense, efficient layout
Name, a grey category line, rating, open status and walk time on one line, then chips. Sections split by an 8 pt band.
Native where it matters
Platform switches and date pickers, a chevron or an arrow for back, blur on iOS and a solid bar on Android.
No gradients over content
Screens open with a large title on a clear bar. As it scrolls away, the bar gains a surface, a hairline and a small title.
Map controls
A white pill for the area, white circles and rounded squares for tools. Pins are blue discs; the chosen one is a teardrop.
Four tabs,
one question each
The app started map-first. In the fourth round it became prayer-first: Home answers what's next, the Map answers where, Community shows what's happening, and You keeps what's yours.
- Next prayer and countdown
- Nearest jamaahPrayers near you
- Stories: ayah, hadith, adhkar, classes
- Hijri date and weather
- Ramadan, travel and Jumu'ah cards
- Arrange Home
- Search and filter chips
- The map sheet
- Masjid page TimetableFacilitiesEventsFundraisersPhotosReviewsImam and staffHistory
- Add a missing masjid
- Offline area
- EventsClasses, talks, iftars
- RequestsQuestions and volunteers
- Help & servicesJanazah, clinics, food banks
- Nearby alerts
- The + menuCreate an event, ask for help, add a service
- Profile, points and level
- My masjid, saved, reminders
- Prayer times, Qibla, Hijri calendar
- ConnectionsQuran, hadith, duas
- Your events, posts and organisations
- Settings
Prayer first, map second. Round four put the next prayer and the nearest jamaah on the first screen and gave the map a tab of its own, so the map is one tap away instead of being the whole app.
Six journeys,
start to finish
Each flow is the shortest honest path from a need to an answer, with the real screens along the way.
From "where do I pray?" to standing in the row
The journey the app was first built for.
- 1Home shows the next prayer
- 2Soonest jamaah first
- 3The masjid, at a glance
- 4Directions, your way




Sort by the jamaah you can still make, not by distance. Each masjid's next jamaah, from its timetable or estimated from the adhan, plus the walk or the drive. The closest masjid isn't always the one you'll make in time.
The trust model
With so little to start from, the people who pray there have to keep things right, and the app has to make that safe.






A missing masjid, added in a minute
When a masjid is missing, adding it should take a minute, not an afternoon, and never a duplicate.


An event, from the first post to the recap
Classes, talks and iftars are a big part of a masjid's life. An event should be easy to post and hard to miss.
- 1Create
- 2Remind and RSVP
- 3Tickets at the door
- 4Recap


JazakAllahu khairan to everyone who came. Next Thursday we carry on with Surah Al-Kahf.
Joining can need approval. Some events need more than a headcount, so organisers can ask sign-up questions, approve requests, allow +1s and let guests sign up on the web without an account.
Fundraisers, without money passing through the app
Masjids raise money all the time: a roof, a wudu area, Ramadan food packs. The app makes the need visible and leaves the giving to the masjid.


Connections: other people's free services, with credit
Good free Islamic services already exist. Rather than rebuild them, First Saff shows them inside the app, with their makers' names on them.






A small system,
used everywhere
Tokens live in one file, glyphs in another, components in a third. Feature code uses only these, so a change to a token reaches every screen. It is also how dark mode and Larger text work everywhere at once.
Colour
#1F6BFF#1859D9#EAF1FF#1D1D1F#7A7A80#A8A8AD#FFFFFF#F4F4F4#F0F0F0#E6E6E6#1FA35B#F0453A#F5B800#7A4F00Eight glyph tones, each a colour and its soft background, so different kinds of things can be told apart at a glance.
Type
400, 500 and 600. Narrow, open, a little square in its curves.
Corners
Glyphs
134 glyphs, drawn for First Saff and shared by the app and this website. One colour gives depth, so a glyph can sit bare in a row, on a tinted square or on a tinted circle and still look like itself.
Components
Small things,
done properly
The details people only notice when they're wrong.
A large title that hands over to the bar
Pushed screens start with a clear bar and a large title. As the title scrolls under, the bar gains a blurred surface on iOS or a solid one on Android, a hairline, and a small centred title.
Three resting points
Small at rest, a place card halfway, and at the top a full masjid page with a back bar, without leaving the map.
A grey band, not another card
Sections on a page are split by an 8 pt band of backdrop grey, which keeps long pages calm without boxing everything in.
One design, two platforms
The same screens on both, with each phone's own controls where people expect them.
Every token has a dark twin
Accents are lifted a little so they keep contrast on dark surfaces, and soft tints become deep, low-saturation versions of themselves. Settings offers Device, Light or Dark, and Larger text, which makes the whole type scale 15% bigger.
Ask at the moment it matters
Location is never asked for on opening: a card says why and offers a choice. Notifications wait until you set a reminder.
Three springs, named once
Presses, tabs swiping back into place and the segmented control share three springs set in the theme, so motion is decided once, not screen by screen.
The whole screen becomes the card
Pull down and the screen itself slides away as one card with rounded top corners, uncovering a blue band that runs right up under the status bar. The arrow turns with your finger, the label changes from "Pull to refresh" to "Release to refresh" past the threshold, then it spins while the data loads, says "Updated" and springs back.
- Rubber band0.8 of your drag at first, firmer as it goes
- At least 0.6 sso a fast refresh never flashes
- iOS bounce keptAndroid gets a pan that only starts at the top
Round by round,
in the open
Most rounds were saved as a checkpoint before the next began. This is what changed each time, as the changes themselves record it.
- 1 Nov
v1-maplibreMasjid Finder, the first build
One Expo codebase for iOS, Android and the web, a Supabase database with its rules, photo uploads, and a design system. A map home on MapLibre; masjid pages with timetables, facilities by vote, photos, reviews, people, events and fundraisers; Qibla, weather, and profiles with scoring and a moderation queue.
The first look borrowed from Yandex Go: yellow, 3D emoji, heavy type. It was later replaced by the quieter craft of Yandex Maps, which is the language you see today.
- 2 Nov
v2-google-mapsGoogle Maps, and the masjid inside the sheet
Google Maps on phones, MapLibre on the web. The masjid page moved into the map sheet, whose top resting point became a full page with a back bar. Adding a masjid was reworked: photos upload as you pick them, place search, an entrance pin for cars, Jumu'ah time and language.
- 2 Nov
v3-map-firstMap-first
Map layers and walking rings, search results on the map, community boards, nearby alerts, and worship tools: a fasting tracker, Friday and suhoor and iftar reminders, travel mode. New kinds of place too: prayer rooms, Eid grounds and temporary jamaats.
- 2 Nov
v4-tabsPrayer-first, in four tabs
Today, Map, Community and You. Today ranks nearby masjids by the jamaah you can still make, from the timetable or estimated from the adhan plus the walk or drive, with Jumu'ah on Fridays. Green pins mark masjids with confirmed times. Today is called Home now.
- 3 Nov
v5-communityThe community round
Joining events with approval, sign-up questions, +1s and walk-ins; organisations with verification and followers; and confirmation rules: most things go live at once, labelled until confirmed, while pushes and alerts wait for one confirmation.
- 3 Nov
Connections
Free Islamic services inside the app with their makers' logos and credit: the Quran from AlQuran.cloud, Quran Radio, duas and adhkar, a hadith of the day. Peace Radio and lectures were built, then kept off until their makers agree.
- 3 Nov
A calmer, plainer app for new users
No tips on the first opening, then at most one a day. Location never asked for on opening. "Prayer" instead of "iqamah" on everyday screens. Home's seasonal cards one at a time, friendly load errors, Larger text, and no hidden long-presses. Row titles and chips moved from Regular to Medium.
- 3 Nov
Renamed First Saff
The app became First Saff everywhere people see it, at firstsaff.com. It wasn't in either store yet, so this was the last cheap moment to change its name and its ids.
- 3 Nov
Faster, closer to home
The database moved to Mumbai and each screen's reads were batched into one request. Measured from Kerala, one database call went from 0.54 to 1.8 seconds down to 0.16, and the profile page from 4.9 seconds to 0.08.
- 3 Nov
A new mark
The mihrab mark across app icons, the launch screen, store art and a brand study. The launch screen became brand blue edge to edge, with the mark alone in the middle.
- 3 Nov
Small decisions, written down
- The big create buttons under each Community tab went: the + menu at the top already had them.
- The map asks for location only on "Use my location", not when the tab opens.
- Prayer reminders are scheduled once, not once per launch, after a day of installs left eight identical Isha reminders.
- On an iPhone without Google Maps or Waze, directions open Apple Maps rather than a web page.
- 4 Nov
This website
A first site went up on firstsaff.com on 3 November, with the web app moving to app.firstsaff.com. A day later it was rebuilt in the style of the Glow template, with the app's own colours, type and glyphs, and this case study.
The first row,
drawn
How the mark was made: what the name means, what we studied, what we tried and threw away, and why the final mark looks exactly the way it does.
AThe name
The straight line worshippers form in prayer, shoulder to shoulder and foot to foot, facing the qibla. The first saff is the front row, nearest the imam and the mihrab. To be in it, you have to arrive early.
That is the whole idea of the app: know where the nearest masjid is and when the next prayer starts, so you can be there first.
“If people knew what is in the call to prayer and the first row, and found no way to get it but to draw lots, they would draw lots.”
The Prophet ﷺ · Sahih al-Bukhari 615, Sahih Muslim 437
“Straighten your rows, for straightening the rows is part of establishing the prayer.”
The Prophet ﷺ · Sahih al-Bukhari 723, Sahih Muslim 433
The name isn't about a building. Most masjid apps draw one. Ours is about being first, and about the row, so a logo that only says "mosque" would miss the point of the name.
BThe brief, and the gap
Six things the mark had to do, written down before the first sketch and checked against every round.

The pictures masjid apps keep coming back to, redrawn by us as plain diagrams. Our own first icon was one of them: clean and friendly, but any masjid app could have it.
C41 references, read one by one
We started from a board of logos the team loves. Each one was opened at full size and studied for its shape, its colour, its light and what makes it stick.
Counts are our own tally, and a reference can show more than one pattern. The references belong to their designers, so we don't show them here; the small drawings are ours.
DSeven rounds, about fifty drawings
Each round answered one question, and the answer usually threw something away. These are the real working sheets.

A mihrab with rows, a pin with a mihrab inside, an arcade, a gate, a pointed arch and a dome built from rows.

Cut away the lower part of a mihrab's left leg, and what is left could be the number one.

Stop the left curve part way down and cut it square to the curve, so the flag points down and left like a real numeral.

Draw the missing leg again, but faded. The eye completes the arch and still sees the solid 1 in front of it.

A real mihrab has round shoulders that flick into a fine point. We tried it with thick strokes.

Rebuilt as an ogee outline minus a pointed niche, the way a real frame is made.

A simple pointed body, with the ogee only in the last tenth of the tip. Every option checked at 60 and 40 pixels.

The flat mark became an app icon: a recessed niche, a frosted leg, a raised 1 and a glowing row. Then four refinements side by side.
EOne shape, three readings
Both at once
At the weight we chose, the arch is complete but the 1 is the brightest thing in it. You see the masjid first, and the number a moment later.
The niche in the qibla wall. Every masjid has one, from a village room to a grand mosque, and every row lines up in front of it.
A plain "1" would be a number, not a logo. Hidden in the arch, it becomes the moment people remember: "oh, it's a one."
In the app, gold already means recognition: levels, the leaderboard, thanks. The first row is an honour, and the one warm thing on a cool tile.
FConstruction and material
Drawn on a 1024-unit canvas with a 64-unit grid, from filled shapes rather than lines, so every edge can be controlled exactly.
| Canvas | 1024 × 1024 units, 64-unit grid |
| Arch width | 384 units, 37.5% of the canvas |
| Leg width | 134 units, about a third of the arch |
| Crown depth | 126 units, so the stroke feels even |
| Tip | The last 11% of the rise is a small ogee |
| Fold | 30° below horizontal, square to the curve |
| Row | 384 × 76: as wide as the arch |
| Gap | 44 units between the feet and the row |
| Corners | 18 on the feet; tip and fold stay sharp |
| Balance | 170 above, 168 below: centred within 2 |
Outer arch, across the feet and back over the niche in a single closed path. No overlapping edges, so no hairline seams at any size.
A full ogee looked like a pagoda, a plain point like a pen nib. A plain point with a small flick at the very top reads as a masjid.
A horizontal cut made a hook. A cut at 30°, square to the curve, makes the flag of a numeral, as if the leg were folded back.
- TileSaff Blue from a lighter #3D8BFF at the top to Deep Blue at the bottom, with a soft sheen in the top-left corner.
- NicheThe inside of the arch darkens towards the top, like a real alcove, so it reads as a recess, not a sticker.
- Glass legWhite at 32% fading to 10%, with a crisp highlight on its lit edge. The same idea as the app's two-tone glyphs.
- The rowGold from #FFE38A to #F5A300, a bright top edge, and a warm glow that spills onto the tile.
- The oneNear-white, a cool shade on its lower-right edges and a rim light on the upper left. Its shadow falls across the fold.


Below about 29 pixels, and anywhere effects aren't possible, the mark goes flat: same shapes, same two-tone rule, no shading.
GTen tests before we called it done
A logo lives mostly at small sizes, at a glance, on someone else's wallpaper. So we tested it the way people will actually see it.

Blur it until the detail is gone. A strong mark keeps its shape: a tall white arch on a gold line.
About 1 in 12 men and 1 in 200 women see colour differently. The mark is built on lightness, not hue, so the 1 and the row stay clear.
In one colour the shape alone has to carry it. Without the glass leg, it's a pure 1 on a line.
Light and dark, busy and calm: the blue tile and the white 1 stand out on both.






Android crops the icon to whatever shape the phone uses. The mark sits inside the safe zone, so nothing is ever cut, and it works as a themed icon and a white notification glyph.
The first gold, #FFC23A, measured only 2.8:1 on flat Saff Blue, just under the 3:1 a shape needs. In the 2.5D icon it was fine, because the row sits on the deeper blue at the bottom of the tile. So the flat gold moved to #FFD04F, a touch lighter, which passes everywhere.
- Readable from 16 to 1024 px
- An arch and a 1 when blurred
- Distinct in three kinds of colour blindness
- Holds as a one-colour silhouette
- The 1 and row pass 3:1, flat and 2.5D
- Fits Android's circle and squircle
- Works as a themed icon
- Reads as a white notification glyph
- Stands out on light and dark wallpapers
- Centred optically within 2 units
HWordmark and usage
We compared 600, 700 and 800. 600 looked thin beside the icon, 800 crowded the counters. 700 matches the weight of the arch's legs.
The dot of the i sits exactly where Anek draws it, but in gold. It's the first row again, tying the word to the mark.
An early version used Inter. It was neat but generic. Anek is already on every screen of the app, so the name looks like it belongs.
Keep a quarter of the icon's height clear on every side, and leave the drawing alone.
| App icon, 2.5D | 29 px and up |
| App icon, flat | 16 px and up |
| Lockup | 110 px wide and up |
| Backgrounds | White, light grey, Saff Blue, Night |
IWhere you'll meet it





First Safffirstsaff.comJBrand assets
The files, for anyone writing about First Saff or putting up a poster at the masjid. Please use them as they are.
Gold works because there is so little of it: the row, the dot, and moments of recognition. Tap a colour to copy it.
What's next,
and what we learnt
Label what you don't know
An estimated time marked as estimated is useful. One that pretends to be confirmed is worse than none.
Ask at the moment it matters
Permissions, tips and prompts now wait for the moment someone needs them, not the moment the app opens.
Plain words beat correct ones
"Prayer" on everyday screens; "iqamah" where the detail matters.
Trust is a system, not a badge
Levels need approved help, not just points; mistakes cost points; every change keeps a history.
Credit, and ask first
Showing someone else's work inside the app means their name on it and their yes before it goes live.
Save every round
A tagged checkpoint before each big change means nothing is more than one step from undone.
Join the First Saff.
Be there early.
Open First Saff in your browser today and add it to your home screen. The iPhone and Android apps are on their way, insha'Allah.
