umenzi
{{ searchCountLabel }} Clear
Upcoming {{ u.name }} {{ u.date }} {{ u.year }} {{ u.near }} Track an order

{{ counts }}

Everything here was made by hand, and every one of them can be given.

Curated. Conscious. Culture.

A gallery of African making, hung in eight shelves. Each object carries its full label when you look closer — who made it, where, and from what. Any object can be sent to someone else instead.

The gallery, hung

Under glass

Five objects, set out this week.

{{ vitrineNote }}

{{ o.name }}

{{ o.name }}

{{ o.artisan }} · {{ o.place }}

{{ o.priceLine }}

{{ o.curatorNote }}

The shelves

Browse across.

See the whole wall →

{{ sh.blurb }}

{{ o.preorderLabel }} {{ o.name }}
{{ sh.act.n }} {{ sh.act.name }} {{ sh.act.artisan }} · {{ sh.act.place }} {{ sh.act.materials }} · {{ sh.act.dims }} {{ sh.act.priceLine }} Record → Give

A gallery that wraps things.

umenzi keeps one wall. Every object on it is documented and made in small numbers — a maker, a material, a place, written down and travelling with the piece. Nothing generic is hung.

We would rather show you thirty-six things worth owning than a catalogue of four hundred.

The ribbon

Any object on the wall can be set aside as a gift: hand-written card, unbleached tissue, and the date held so we can write to you before it comes round again.

Keeping it for yourself needs nothing — the record comes either way.

How giving works

Prices in ZAR, set at each drop. Catalogue and makers are placeholder content; photography is licensed stock standing in for the objects. Nothing here is live inventory yet.

Walk the wall

Salon hang

The wall

Thirty-six objects, hung close. Hover or tap any object for its full label, and give it from there.

{{ shownCount }} hung
For Clear {{ matchNote }}
{{ banner.name }}

{{ banner.blurb }}

{{ o.name }}

{{ o.sku }}

{{ o.name }}

{{ o.artisan }} · {{ o.place }}

{{ o.materials }}

{{ o.dims }}

{{ o.priceLine }} · {{ o.stockLine }}

{{ o.story }}

{{ o.sku }}

{{ o.name }}

{{ o.artisan }} · {{ o.place }}

{{ o.materials }}

{{ o.dims }}

{{ o.priceLine }} · {{ o.stockLine }}

{{ o.story }}

The wall · {{ cur.shelf }} · {{ cur.n }}

{{ cur.name }}
Detail
In the room
{{ cur.artisan }}

{{ cur.sku }}

{{ cur.name }}

{{ cur.artisan }} · {{ cur.place }}

{{ cur.priceLine }}

Pre-order · nothing is charged today

Wall label

{{ sp.k }} {{ sp.v }}

Curator's note

{{ cur.story }}

{{ wishNote }}

Send it to someone

{{ shareNote }}

Something you want to know first? Ask about this object →

{{ basketNote }}

{{ curModeLabel }} {{ curDemandLine }} so far

Ways to pay at the drop

{{ b.label }}

Shown for {{ payCountryName }}. Nothing is charged until a drop is priced and you confirm.

Provenance

{{ r.title }}

{{ r.body }}

What people wrote

Write a note →

{{ ratingLine }}

out of 5 · {{ reviewCount }}

{{ b.star }} {{ b.n }}
{{ rv.who }} {{ rv.where }} · {{ rv.when }} {{ rv.stars }} / 5

{{ rv.body }}

{{ rv.verified }}

Notes are placeholder content for layout.

Hung nearby

Back to the wall →
{{ o.name }}

Curated, not commoditised

The founding makers

Every maker is South African, provenance-documented, and unrepeatable — nothing generic makes the shelf.

{{ m.name }}

{{ m.initials }}

{{ m.name }}

{{ m.status }}

Tap any maker to read their story. The first makers are being approached now — the studios named here are placeholders, standing in until real ones are agreed, and so are the studio names shown against objects on the wall.

Making something worth hanging?

Applications open with a short story, three sample pieces and where the material comes from. We read every one.

Apply for a shelf

The ribbon

Send it to someone

Everything a gift needs and nothing a gift does not. We wrap it, write the card in our hand, and hold the date so we can tell you before it comes round again.

Nothing is ribboned yet

Choose an object from the wall and pull its ribbon. It comes here to be addressed.

Browse the wall

Held

{{ gfDoneHeading }}

{{ gfDoneBody }}

Your reference is {{ gfRef }} — it also reaches you by email.

  1. {{ s.text }}
{{ s.num }}  {{ s.label }}

What is going

Wrapped in unbleached tissue, sealed, and sent without a price anywhere on or in the parcel.

{{ l.name }}

{{ l.name }}

{{ l.maker }} · {{ l.qty }}

Remove

Who it reaches

Their address, not yours. We confirm a delivery window with them by message without saying what it is or who it is from.

{{ gfErrorText }}

The occasion and the card

The occasion is why we can write to you before it comes round again next year. The card is written by hand and enclosed unread.

{{ o.label }}

{{ gfNoteCount }}

{{ gfErrorText }}

No card is taken and nothing is charged. Prices are set at each drop; we write to you to confirm and settle before anything is wrapped.

Before the doors

Everything here was made by hand, and every one of them can be given.

umenzi is a gallery of African making that wraps things. One small wall, thirty-six objects, and a full label on every one — who made it, where, and from what.

A maker at the wheel

What this is, and why

Three things worth knowing before you decide whether to stay.

{{ p.n }}

{{ p.title }}

{{ p.body }}

The opening

{{ wcCountHeading }}

{{ wcCountBody }}

{{ u.value }}

{{ u.label }}

{{ wcWaitingLine }}

You are on the list

That is everything we needed.

  1. {{ s.text }}

{{ wcMailNote }}

See the wall

Two lines

Join the opening list

The list decides who sees each run first. The shelves are small and most objects exist in single figures.

{{ o.label }}

A name and a working email, please.

Join the list

One address, kept for the opening and the Journal if you asked for it. Nothing else, and no third party. Leave at any time from the link in any email.

{{ dy.date }} · {{ dy.standing }}

{{ dy.name }}

{{ dy.summary }}

{{ dy.imageAlt }}

{{ p.text }}

On the wall

{{ dy.onTheWall }}

{{ dy.browseLabel }}

Where this comes from

Every dated claim on this page is drawn from the sources above. Where a day has no official standing, the page says so rather than implying one.

Makers · {{ mk.name }}

{{ mk.name }}

{{ mk.initials }}

{{ mk.name }}

{{ mk.meta }}

{{ s.value }}

{{ s.label }}

{{ mk.story }}

{{ mk.commissions }}

{{ mk.name }} has not given us a public address yet. Send a message and it reaches them through us.

Track record

{{ mk.accoladesNote }}

{{ a.year }}

{{ a.text }}

From the studio

{{ mk.mediaNote }}

{{ mk.name }} at work
Studio film to come
{{ g.alt }}

On the wall

{{ o.name }}

{{ o.name }}

{{ o.priceLine }}

The ribbon

Any object on the wall can be given.

There is no separate gift shop. Choose Give on any object and we wrap it, write the card, and hold the date so we can tell you before it comes round again.

Wrapping table

Find something to give

{{ laneBlurb }}

{{ laneActionLabel }}

{{ laneNote }}

What the ribbon does

{{ r.n }}

{{ r.title }}

{{ r.body }}

Your year, held

{{ c.when }}

{{ c.name }}

{{ c.note }}

Build the package

{{ pkgHeading }}

{{ pkgIntro }}

{{ b.name }}

{{ b.name }}

{{ b.line }}

{{ b.blurb }}

{{ b.slotLine }}

{{ pkgPickTitle }}

Start from a different bundle
{{ p.name }} ✓

{{ p.name }}

{{ p.maker }}

Finishing touches

What goes in the box alongside the objects. Everything marked already in every parcel is there whether you tick it or not — it is listed so you know what arrives.

{{ tg.name }}

For companies

Gifts in numbers, without becoming generic.

Client and staff rounds, chosen object by object so nobody opens the same thing as the person beside them. Event swag, where the run is identical on purpose and the count is the hard part. Both are drawn from the makers who have told us what they can carry in a month — which is why we answer with a date before we answer with a price.

{{ cs.n }}

{{ cs.title }}

{{ cs.body }}

Start a corporate round →

Takes you to the chooser above with the corporate questions on it. Nothing is committed and nothing is charged.

Leave a name at the desk

We remember the date.

Tell us who you tend to send to and we will write once, six weeks before their occasion, with what has arrived on the wall since.

One letter, six weeks before the date. It is not the newsletter and it is not a list — leaving your name here does nothing else.

{{ formNote }}

Wishlist

{{ wlTitle }}

{{ wlBlurb }}

A list, not a bookmark

A wishlist belongs to you, so it needs an account.

The point of the list is that somebody else can read it when they are choosing what to give you. That means it has to outlive this browser — and there has to be a you for it to belong to.

No password. We hold an address and nothing else.

Nothing on it yet

Every object on the wall has a heart on it. Anything you press stays here, and can be handed to whoever asks what you would like.

Browse the wall →
{{ w.name }} Spoken for

{{ w.name }}

{{ w.maker }} · {{ w.place }}

{{ w.modeLine }}

Remove Give this → {{ w.claimLabel }}

About

Rooted in heritage,
crafted with passion.

umenzi exists to put African making in front of people who will keep it. We honour tradition, pay the maker first, and document where every object came from.

We run it as a gallery that wraps things: the wall is small, the labels are complete, and the ribbon is always within reach — because gifting repeats on the calendar in a way that self-purchase does not.

Documented Small batch Maker paid first
Installation view

What we hold to.

{{ pr.title }}

{{ pr.body }}

“Let every pixel and paper cut whisper modern African luxury.”

Read our story

From inspiration to empowerment

Our journey

The founders' vision, the road so far, and the heart behind umenzi.

The founders
Hands at the wheel
A maker at work

How we got here

{{ t.year }}

{{ t.title }}

{{ t.body }}

Our policies

Plain terms, written before the first object leaves the wall.

{{ po.title }}

{{ po.body }}

{{ po.meta }}

Get in touch

Acquisitions, makers, press, or a gift you can't quite describe yet — write to us.

{{ ct.k }} {{ ct.v }} {{ ct.waiting }}

Millennial Horizons Holdings · Cape Town, South Africa

{{ msNote }}

Where is it now

Track an object

Every held ribbon gets a reference on the record card. Enter it to see where the object is between the wall and the person receiving it.

Nothing held under that reference. It looks like MEN-4KQ2ZP and arrives with your confirmation.

{{ trackNote }}

{{ trackHeading }}

{{ trackSub }}

{{ t.title }}

{{ t.body }}

{{ t.when }}

How an object reaches you

Eight steps, and who is holding it at each one.

{{ hubIntro }}

{{ st.name }}

{{ st.ownerLabel }} Waiting on {{ st.waitingOn }}

{{ st.line }}

{{ st.detail }}

{{ hubFoot }}

Held for you

Your basket

{{ cartCountLabel }}

Nothing held yet

The wall holds thirty-six objects, each made in numbers small enough to count. Take one down and it waits here.

Browse the wall →
{{ l.name }}

{{ l.name }}

{{ l.lineTotalLine }}

{{ l.sku }} · {{ l.maker }}

{{ l.eachLine }}

{{ l.modeLabel }} Ribboned · goes as a gift {{ l.demandLine }}
− {{ l.qty }} +
{{ l.giftLabel }} Remove

The ribbon

Pre-ordered

{{ coThanks }}

We have written to {{ coDoneEmail }}. Nothing has been charged — when the shelf opens we will confirm each object and arrange payment then.

Reference

{{ coDoneRef }}

Total when charged

{{ coDoneTotal }}

{{ d.label }}{{ d.amount }}
{{ coDoneDelivery }}

Nothing to reserve

Your basket is empty. Take something down from the wall first.

Browse the wall →

Everything here is ribboned

{{ coAllGiftsTitle }}

Gifts go a different way to the ordinary checkout: their address, an occasion, and the card you write. Nothing is charged in either flow.

{{ coAllGiftsBody }}

{{ cartGiftLabel }}

Back to the basket to take a ribbon off

Pre-order

{{ s.num }} {{ s.label }} {{ s.num }} {{ s.label }}

Who it reaches

We write to you here when the shelf opens.

Please tell us your name.

We need a working email address.

How it travels

{{ d.label }}

{{ d.detail }}

{{ d.feeLine }}

{{ d.label }}

{{ d.detail }}

{{ d.feeLine }}

A street address is needed for the courier.

Which city?

Which province?

Four digits.

Before we hold them

Reaches

Edit

{{ coName }}

{{ coEmail }}

{{ coAddressLine }}

Objects

Edit
{{ l.qty }} × {{ l.name }} · ribboned {{ l.lineTotalLine }}

How you will pay

{{ payCountryName }}

Choose the method you would like opened when the drop is priced. Nothing is entered or charged here.

{{ m.label }} {{ m.detail }}

Leave this unset and we will ask when we write to you.

{{ coMixNote }}

Nothing is charged now

No card is taken on this page and no gateway is opened yet. umenzi is pre-launch and prices are set at each drop: this reserves each object against its run, and we write to you to confirm and settle before anything ships.

{{ coErrorText }}

Join the shop

Create an account

Keep your reservations, ribbons and waitlist in one place.

Welcome, {{ suFirstName }}

Your account is open. We have sent a sign-in link to {{ suEmail }} for next time — there is no password to remember.

Go to your account →

Please tell us your name.

We need a working email address.

Create account

Already have one? Sign in

No password

We do not ask for one, and we do not keep one. When you want back in, we email a single-use link. Nothing to forget, nothing worth stealing.

— {{ p }}

Welcome back

Sign in

Give us the address you signed up with and we will send a link.

We need a working email address.

Send me a link

New here? Create an account

Your account

Sign in to see your reservations, the ribbons you have tied, and what you are waiting on.

What we may send you

{{ prefStamp }} You do not need an account to change these.

{{ forgetWarning }}

{{ acInitials }}

{{ acGreeting }}

{{ acEmail }} · joined {{ acJoined }}

Sign out

Reservations

Nothing reserved yet.

{{ o.ref }} {{ o.status }}

{{ o.placed }} · {{ o.method }}

{{ it.label }}{{ it.amount }}
Total when charged{{ o.total }}

Waiting on

You are not on any list. Join the opening list →

{{ w.label }}

Joined {{ w.joined }}

Leave

Apply for a shelf

Sell with us

The wall is curated, not open. We take makers whose work is documented — who made it, where, from what — and who can keep a run small without it falling apart. Tell us about the work and we will read every word.

{{ apVerdict }}

{{ apVerdictNote }}

What happens next

A curator reads the application in full — the screen above is only a first pass on how much detail you gave us, never the decision. We write to {{ apEmail }} either way.

We could not reach the studio just now, so this has not been filed. Please try again shortly.

You and the work

We need a name for the studio.

Please tell us your name.

We need a working email address.

This is the part the wall is built on. The fuller it is, the further the application goes.

Making and reach

Uploading…

{{ apFileError }}

  • {{ f.name }} {{ f.sizeLabel }} ×

Leave these blank if you would rather not say yet. Nothing on the wall carries a price until a real one is agreed with you.

Send the application

Internal

Curator

{{ cuLockedNote }}

Sign in →

Internal

The curator's desk

Refresh
{{ t.n }} {{ t.k }}

Applications

Nothing has come in yet.

{{ a.brand }}

{{ a.verdict }} · {{ a.score }}

{{ a.who }} · {{ a.category }} · {{ a.when }}

Provenance. {{ a.provenance }}

Story. {{ a.story }}

{{ a.making }}

{{ f.name }}

{{ a.fileError }}

Accept Hold Decline {{ a.email }}

Pre-ordered

No objects reserved yet.

{{ i.item }}

{{ i.artist }}

{{ i.when }}

The opening list

Nobody on the list yet.

{{ s.email }} {{ s.when }}

These three tables are readable only by a signed-in curator. The allowlist lives in the database and is not readable through the API — this page cannot grant itself access, and a maker signed in to the portal sees nothing here.

For makers

Artist portal

Where accepted makers write their own record, upload their own images, and put objects on the wall. Your work, in your words.

Sign in Create an account

{{ ptErrorText }}

The account exists, but this project still asks for email confirmation and has no mail server configured — so no link will arrive. Switch off Confirm email in Supabase → Authentication → Providers → Email, then sign in.

{{ ptSubmitLabel }}

Not on the wall yet? Apply for a shelf first — the portal opens once a curator has said yes.

A separate door

This account is not a shopper's account, and the two never meet. Makers get a real sign-in with a password because they own rows in the catalogue; shoppers get a passwordless one because they own nothing but their own basket.

Your drafts, your images and your record are visible to you alone. The database enforces that, not this page.

Artist portal

{{ ptGreeting }}

{{ ptUserEmail }}

Sign out

Your objects

Nothing yet. Add your first object below — it stays a draft until you list it.

{{ p.title }} No image

{{ p.title }}

On the wall Draft

{{ p.category }} · {{ p.priceLine }}

{{ p.toggleLabel }} Delete

Add an object

Leave the price blank and the wall shows Set at drop — no invented figure. JPEG, PNG, WebP or AVIF, up to 10 MB.

Uploaded {{ npUploadNote }}

{{ npErrorText }}

{{ npSaveLabel }}

Before the doors

The opening list

The first makers are being approached, and collections are still in preparation. The list decides who sees each run first — the shelves are small, and most objects exist in single figures.

You are on the list

We will write to {{ wlEmail }} before the opening, and again when a maker you follow releases a run.

Please give us a name and a working email address.

Put me on the list

The founding makers

{{ m.name }} {{ m.status }}

What you are waiting on

{{ w.label }}

Joined {{ w.joined }}

Leave
umenzi™

Curated. Conscious. Culture.

A gallery of African making, where everything is wrapped on request.

Placeholders — set the URLs in SOCIAL_LINKS to make them live.

{{ col.title }}

{{ lk.label }}

Worldwide

{{ langNotReadyNote }}

umenzi™ and the umenzi™ word mark are trade marks of Millennial Horizons Holdings (Pty) Ltd. Trade mark applications pending; not yet registered.

© {{ copyrightYear }} Millennial Horizons Holdings (Pty) Ltd. All rights reserved. The text, layout, photography selection and source code of this site are the property of the company or its licensors. Product photography is licensed from Adobe Stock and remains subject to that licence.

Catalogue, prices and makers on this page are placeholder content for layout, and the photography stands in for the objects until the makers’ own images arrive. Nothing shown is live inventory.

Commission {{ commissionMaker }}

×

Sent. {{ commissionMaker }} will see this with your brief, and we write back with what it would take and what it would cost before anything is agreed.

Close

Tell them what you have in mind. Nothing is charged and nothing is committed — this opens a conversation, and a quote follows.

A name, a working email and a line about the piece, please.

The ribbon

{{ gift.name }}

×

{{ gift.artisan }} · {{ gift.place }}

What happens next

  1. This object is set aside with its ribbon pulled.
  2. You give us the address, the occasion and the card.
  3. We hold it. Nothing is charged until the drop is priced.
Address this gift → Ribbon it and keep shopping

{{ ribbonNote }}