How it works, in the order you meet it
Nine steps, from an empty workspace to the record of what happened. Each one shows the surface you would actually be looking at, with sample content in it. Nothing on this page moves on its own, so you can read it at your own pace.
This is a demonstration, not a live account
Every panel here is the product interface with sample content in it. No connector has passed provider verification, so nothing publishes to any platform through this product today. Where the workflow stops, the page says so instead of drawing the rest.
Step 1 of 9
Create a project
A project holds accounts, drafts, approvals and a time zone. Every query in the product is scoped to one, in the application service and again in the database, so a client cannot see another client by accident.
Project
Northbound Tools (sample)
Time zone: Central European Summer Time (GMT+2)
Drafts, accounts, approvals and receipts belong to this project and nowhere else.
Step 2 of 9
Connect an account
Connecting runs through official platform APIs only, and tells you what the platform requires of the account before you start. Today every connector stops at verification, which is why each row below says so rather than showing a green tick.
Accounts in this project
- X, @northboundVerification not complete
- LinkedIn, Northbound ToolsVerification not complete
- Instagram, @northbound.toolsVerification not complete
Each row would carry token health, the permissions granted and the last successful post. None of them can publish today.
Step 3 of 9
Write it once, adapt it per platform
You write a master draft. Selecting one account opens an override for that account alone, with its own limits and its own preview. Nothing you write for LinkedIn changes what X receives, and the checks under each version run before anything is scheduled.
Master draft
Northbound 2.4 is out today. Imports are faster, search has a keyboard shortcut, and the export bug two of you reported is fixed.
In project Northbound Tools (sample)
Step 4 of 9
See what each account actually receives
One draft becomes one version per account, each written for the platform it goes to: a shorter line for X, the full release note for LinkedIn, a caption and alt text for Instagram. You edit any of them without touching the others, and every version carries the check that applies to it.
What each account receives
X, @northbound
Northbound 2.4 is out. Faster imports, keyboard search, and that export bug is fixed.
Character count and thread order
LinkedIn, Northbound Tools
Northbound 2.4 is out today. The release note explains the import changes and the export fix in full.
Organization role and post length
Instagram, @northbound.tools
The same release picture, with a caption written for the feed and alt text written by a person.
Account type, aspect ratio and alt text
Step 5 of 9
Check it before it is scheduled
The composer measures each version against the account it is written for: the character limit that account really has, alt text on every image, and whether the platform offers a first comment at all. A version that fails a check cannot be scheduled.
Checks before scheduling
- Character limit, per accountEach version is measured against the limit the platform gives that account.
- Alt text on every imageAn image without a description, or without being marked decorative, stops the schedule.
- First comment allowed hereA first comment is only offered on accounts whose platform supports one.
These run in the composer before anything is scheduled, and again before anything is sent.
Step 6 of 9
Give it a time, or hand it to the queue
A time is stored as an instant plus the project time zone, never as a naive local time, so a daylight saving change moves nothing under you. The queue is the other route: it takes the next slot allowed by the rules you set.
Scheduled
Tuesday, September 15, 2026 at 9:15 AM in Central European Summer Time (GMT+2)
One approval is required before anything can be sent.
The queue is the other route: it picks the next slot your rules allow, in this time zone.
Step 7 of 9
Watch the calendar
The week shows the platform, the account, the state and the time for every post. Moving one is a button as well as a drag, so the calendar is fully usable from the keyboard.
The week
Monday
Nothing scheduled
Tuesday
9:15 AMX, @northbound
1:00 PMLinkedIn, Northbound Tools
Wednesday
5:30 PMInstagram, @northbound.tools
Thursday
Nothing scheduled
Friday
Nothing scheduled
The same three posts on the calendar, read in the project time zone.
Step 8 of 9
Publish, and keep the record
A publish run sends each version at its instant, records what the platform answered, and writes an immutable receipt. That run is the part that does not exist yet, so the last two steps below are pending rather than drawn as finished.
Publishing and the record of it
Approved by Ravi, sample reviewer
Queued for its slot
Sent to the platform
Confirmed by the platform
- External post ID
- Unavailable
- Permalink
- Unavailable
The last two steps are written by the publish run. No connector has passed provider verification yet, so they stay pending and the external post ID and permalink stay unavailable.
Step 9 of 9
Read the weekly digest
The digest describes what the product did in sentences: how many versions went out from one draft, which slot was earliest, what was approved. It carries no engagement figures, because analytics come from the platforms after a post publishes and nothing publishes yet.
Your week, in sentences
Sample
- Three platform-native versions went out from one draft this week.
- Tuesday morning was your earliest slot.
- Every version was approved before it was queued.
- Every image carried alt text written by a person.
Live analytics appear here as your posts publish.
That is the whole loop
Nothing above is a mock up of a product we hope to build. It is the interface as it stands, with the publishing half honestly marked as unfinished.