Tester guide
Thanks for trying Streetwave. This page is public and gives away no secrets โ everything
behind a password is described, not shown. Ten minutes here will cover the whole product.
What this is
Streetwave is a micro-promotion marketplace for independent artists. An
artist breaks a promotional campaign into small, checkable tasks โ place ten posters,
contact twenty DJs, find venues, shoot a reel. Promoters on the ground are
offered that work over WhatsApp, accept or decline it, and submit photo, video,
link or GPS proof. The platform reviews the proof, records the payment, and rolls it all
up into a picture of what actually works, where, and when.
The bet: promotion is currently bought in opaque lumps and nobody can prove what
happened. Break it into units small enough to verify and you can measure it.
Two ways in
As an artist โ create an account. That is the
real front door. Pick a name, an email and a password and you are looking at your own
console. Nothing to ask us for, and you see only your own campaigns. Forgotten the
password? Ask for a reset link.
As an operator โ the platform side (review queue,
platform console) needs an operator account. Sign in at
/ops/login with the email and password we set up for you. If
you only have an artist account, following an operator link will ask you to sign in
first โ expected, not a bug.
The three sides
| Side | What they do | Where |
|---|---|---|
| Artist | Commission campaigns, watch progress, read what it bought them. | /console/artists/{id} |
| Platform | Assign the work, verify the proof, record payments, measure everything. | /ops ยท /platform |
| Promoter | Sign up over WhatsApp, accept jobs, send proof, get paid. |
Try this as an artist
No password needed for any of this โ just an account.
- Create an account. Ten seconds. You land on your own console with nothing in it yet.
- Start a campaign. A title, a city, a budget, and a handful of tasks โ place 10 posters, contact 20 DJs, find venues. Set the pay per unit. The task registry already knows what proof each one needs.
- Activate it. That runs the matcher: promoters are chosen by proximity to your city and by reputation, and offered the work on WhatsApp. You never chase anyone for an answer.
- Watch it fill in. Your console shows what is committed, what has been spent, and how many leads the work produced.
- Look at the proof. Once an operator approves a promoter's photo it appears in your verification gallery โ real evidence, not a status tick.
- Check the balance. Your first few campaigns are hosted free while we are testing. After that a campaign draws a hosting fee (roughly $1 in Gambia, $5 in the US) from a prepaid balance โ see Balance on your own console. Nothing is charged for a draft.
Try this as an operator
Sign in at /ops/login with your operator account. If the artist
list is empty, create an artist account first โ the platform view
shows every artist, so you can walk your own through the flow.
- Start at the artist list. Open an artist. This is their view: campaigns, what they have committed, spent, and the leads the work generated.
- Open a campaign for the report. Progress, spend, leads, and an allocation recommendation for where the next dollar should go.
- Review queue. This is the heart of the product. Pending proof, each with auto-flags raised before a human looks at it โ missing GPS, out-of-area GPS, missing required evidence, possible duplicates. Pick one and approve it.
- Payouts. The item you just approved is now money owed, grouped by promoter. Approving is deliberately not paying โ record a payment (any URL works as the receipt) and watch it leave the queue.
- Platform. The top-down view: what works by task category, by location, by weekday and by campaign phase, rolled across every artist. Then artist by artist.
- What works and Allocation โ cost per lead by task type, and how a $1,000 budget should be split.
- Contractors. The promoter onboarding queue. Anyone who messages the WhatsApp number lands here as pending until someone activates them.
- API docs. All of the above exists as a JSON API โ the HTML is just a skin over it.
Try this โ with a phone
This is the part that actually exercises the product. You need the WhatsApp number and
the join code from your invite.
-
Register the sandbox. Send the join code (e.g.
join two-words) to the WhatsApp number. You must do this before the number will answer you. -
Sign up as a promoter โ send
JOIN Your Name | Your City | Your Country. You will be created as pending. - Activate yourself in the onboarding queue โ the platform, not the promoter, decides who works. You should get a welcome message.
- Get offered a job. From Platform, hit Auto-assign on the campaign. The matcher picks the best promoter by proximity and reputation and offers it to you: reply Y to accept.
-
Reply
Y. You get the full brief โ what to do, how many units, what it pays, and how long you have. - Send a photo. No links, no upload page โ just send the image in the chat. It is downloaded, re-hosted and filed as evidence against your open job. It should appear in the review queue within a second or two.
- Close the loop. Approve it in the queue, then pay it from Payouts. The promoter gets a WhatsApp message telling them they have been paid.
Useful commands in the chat:
STATUS (open jobs and deadlines),
PROFILE (your reputation and earnings), HELP.
Sharing your location sharpens how you get matched to nearby work.
What is real, and what is not
Worth knowing so you do not chase things that were never wired up.
| Thing | Status |
|---|---|
| Campaigns, tasks, matching, offers, proof, review, payouts ledger | real |
| WhatsApp transport (sending, receiving, photo download, signatures) | real, on a sandbox number |
Accounts created at /signup |
real |
| The "Tower of Jericho" campaign and its promoters | synthetic demo data |
Proof photo links on cdn.streetwave.test |
fake URLs, images will not load |
| Paying a promoter | records a receipt URL only โ no money moves |
| Your balance and the hosting fee | real ledger, but the money itself is sent by hand and confirmed by an operator โ there is no payment rail wired up yet |
| Streams, views, follower counts | typed in by hand; no Spotify/YouTube sync |
Known limitations
- The WhatsApp sandbox opt-in lapses after about 72 hours. If the number goes quiet, re-send the join code.
- Both sides have real accounts. Artists sign themselves up; operators sign in at /ops/login with an account we create. Every approval, charge and recorded payment carries the operator's name, and one operator can be turned off without disturbing anyone else.
- Password resets arrive by email now. Ask for a link and it is emailed to you. If it is not in your inbox, check spam while we are still sending through a shared relay.
- Rejections do not message the promoter. The work reopens for them, but they are never told why. Known gap.
- Duplicate detection is exact-URL only. Sending the same photo twice from two phones will not be caught. Near-duplicate hashing is on the roadmap.
- It is SQLite. Fine for a handful of testers, not for load. No migrations framework either โ schema changes are reconciled on startup.
Telling us what broke
The most useful things to report, in descending order of value:
- Where the story stops making sense. A step that needed explaining, a number you did not trust, a screen you could not find your way back from.
- A 500. Note the URL and roughly what you had just done.
- Proof that should have been rejected but was not, or the reverse โ an obviously fine photo that got flagged. The flagging rules are crude and this is where they earn their keep.