/* ⚠️ CETTE PAGE PORTE SON PROPRE STYLE, et c'est délibéré. Elle partage les TOKENS de la page d'accueil (mêmes valeurs), pas son code : une feuille commune ferait qu'un ajustement du hero peut casser une page juridique, et une page juridique cassée est celle qu'on ne regarde jamais. Le sous-ensemble tient en cinquante lignes — la duplication est moins chère que le couplage. */ :root{ --bg:#0f1117; --panel:#141825; --line:#242a3d; --ink:#e9ecf5; --ink-dim:#a8b0c6; --ink-faint:#838ca6; /* ⚠️ `--ink-faint` est RELEVÉ par rapport à la page d'accueil (#6f7891) : là-bas il porte trois lignes de complément, ici il porte la date de mise à jour et les libellés de l'identité — 4,29:1 et 4,02:1, sous le seuil AA. Sur un texte juridique dense, c'est l'endroit le moins acceptable pour un contraste limite. Mesuré : 5,63:1 sur le fond, 5,28:1 sur une carte. Ne pas le réaligner sur la page d'accueil « par cohérence » — les deux pages ne demandent pas le même effort de lecture. */ --accent:#6366f1; --accent-2:#818cf8; --r:14px; --wrap:820px; --sans:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; } @font-face{font-family:"Plus Jakarta Sans";src:url(/fonts/plus-jakarta-sans.woff2) format("woff2"); font-weight:200 800;font-display:swap;font-style:normal} *{box-sizing:border-box} html{scroll-behavior:smooth; scroll-padding-top:84px} @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}} body{margin:0;background:var(--bg);color:var(--ink);font:16.5px/1.72 var(--sans); -webkit-font-smoothing:antialiased} .wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px} header{position:sticky;top:0;z-index:20;background:rgba(15,17,23,.86); backdrop-filter:blur(14px);border-bottom:1px solid var(--line)} .bar{display:flex;align-items:center;gap:16px;height:62px} .brand{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none; font-weight:700;font-size:17px;letter-spacing:-.01em} .brand svg{width:35px;height:28px;flex:none} .bar nav{margin-left:auto;display:flex;gap:18px;flex-wrap:wrap} .bar nav a{color:var(--ink-dim);text-decoration:none;font-size:14.5px} .bar nav a:hover,.bar nav a.on{color:var(--ink)} main{padding:44px 0 90px} h1{font-size:clamp(30px,5vw,42px);line-height:1.12;letter-spacing:-.025em;margin:0 0 10px} .updated{color:var(--ink-faint);font-size:14.5px;margin:0 0 28px} .lede{color:var(--ink-dim);font-size:17.5px;margin:0 0 34px} h2{font-size:clamp(23px,3.4vw,29px);letter-spacing:-.02em;margin:56px 0 6px; padding-top:22px;border-top:1px solid var(--line)} h2:first-of-type{border-top:0;padding-top:0} h3{font-size:17.5px;margin:30px 0 6px;letter-spacing:-.01em} p,li{color:var(--ink-dim)} p{margin:0 0 14px} ul,ol{margin:0 0 16px;padding-left:22px} li{margin:6px 0} strong{color:var(--ink);font-weight:600} a{color:var(--accent-2)} a:hover{color:var(--ink)} code{background:#1a1f30;border:1px solid var(--line);border-radius:6px; padding:1px 6px;font-size:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace} .card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r); padding:20px 22px;margin:0 0 22px} .card p:last-child,.card ul:last-child{margin-bottom:0} .kv{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;margin:0;font-size:15.5px} .kv dt{color:var(--ink-faint)} .kv dd{margin:0;color:var(--ink)} @media (max-width:520px){.kv{grid-template-columns:1fr;gap:2px 0}.kv dd{margin-bottom:10px}} table{width:100%;border-collapse:collapse;margin:0 0 18px;font-size:15px;display:block; overflow-x:auto} th,td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top} th{color:var(--ink);font-weight:600;white-space:nowrap} td{color:var(--ink-dim)} /* Le point qui distingue ce produit : on le met en avant, pas en note de bas de page. */ .keep{border-left:3px solid var(--accent);background:#161a29;border-radius:0 var(--r) var(--r) 0; padding:18px 22px;margin:0 0 22px} .keep p:last-child{margin-bottom:0} /* Ce qui reste à compléter : VISIBLE, jamais silencieux. Une mention légale incomplète doit se lire comme un brouillon, pas comme un faux. */ .todo{background:#3a2d0a;border:1px solid #6b5410;color:#f0d68a;border-radius:6px; padding:1px 8px;font-size:14px;font-weight:600} footer{border-top:1px solid var(--line);padding:26px 0 46px;color:var(--ink-faint);font-size:14.5px} footer a{color:var(--ink-dim);text-decoration:none;margin-right:18px} footer a:hover{color:var(--ink)}
TabTree

Legal

Last updated: 9 September 2026 · Version 1.1

Three documents, on one page: who publishes TabTree, the terms you agree to when you subscribe, and what happens to your data. Written to be read, not to be survived.

The short version. Your maps are yours. We do not read them, we do not train on them, and we do not sell anything to anyone. If you stop paying, nothing is deleted and nothing is locked away — your maps stay readable and exportable, and only syncing and editing pause. TabTree sets no cookies and runs no analytics: you can verify that in three seconds with your browser's Network tab.

1 · Legal notice

Publisher

Company
TARDIGRADE SARL, trading as Ai4x (Ai4x Academy)
Registered office
13, rue Ahmed El Mejjati, Rés. Les Alpes, 1er étage n° 8, Maârif, Casablanca — Morocco
ICE
003463957000076
RC
620437
IF
65908714
Patente
35788345
Email
info@ai4x.academy
Phone / WhatsApp
+212 680 092 567
Publication director
Youssef GHALEM, gérant

Hosting

TabTree runs on two providers, and they hold different things:

WhatWhoWhere
The site and the application fileNetlify, Inc. — 512 2nd Street, Suite 200, San Francisco, CA 94107, USAGlobal CDN
Accounts and the documents of signed-in usersSupabase, Inc., running on Amazon Web ServicesParis, France (eu-west-3)

Netlify delivers files; it never receives the content of a map. Everything that belongs to an account is stored in Paris.

Contact

For anything at all — a question, a bug, a refund, a data request — write to info@ai4x.academy. A human answers.

2 · Terms of service

These terms govern your use of TabTree at tabtree.app. By creating an account or subscribing, you accept them in the version in force on that day.

2.1 What TabTree is

TabTree is a mind-mapping and planning application that runs in your browser. The same tree reads as a map, a kanban board, a timeline, a page and a slideshow. With an account, your library is also kept on our server so you find it on every device you use.

TabTree works offline. Editing happens entirely in your browser; the network is needed only to sign in and to sync.

2.2 Your account

2.3 Free trial

Every new account gets 14 days of full access, with no payment method required. The trial starts when the account is created and ends on its own. Nothing is charged, because nothing was collected — there is no card to forget to cancel.

When it ends, the account does not stop working: it moves to the Free plan described in §2.4. You are never locked out, and you are never charged without having chosen to subscribe.

2.4 Plans and price

PlanPriceBilledWhat it includes
FreeUSD 0Never — no payment method asked The whole application, every view and every template, offline and installable. Up to ten maps synced to the account; on each device you may keep as many maps as you like. AI features work with your own Claude API key.
Pro — monthlyUSD 9Every month, renews automatically Unlimited synced maps, 5 million AI credits every month with no key of your own, the Claude connector, and publishing a map to a link.
Pro — yearlyUSD 79Every year, renews automatically The same, at roughly the price of nine months.

Prices are in US dollars. Any sales tax or VAT due in your country is calculated and shown at checkout by our payment provider (§2.5) and is added to the price above.

Unused AI credits roll over from one month to the next, capped at two months' worth. Credits have no cash value and are not refundable on their own.

2.5 Payment — Polar is the merchant of record

Payments are handled by Polar Software Inc., acting as merchant of record. In practice this means: Polar is the seller on the transaction, Polar issues your invoice, Polar collects and remits the applicable tax, and Polar — never us — receives your card details. We do not see, store or process any payment instrument. Your payment relationship is governed by Polar's terms; your use of TabTree itself is governed by this document.

2.6 Cancelling

You can cancel at any time, in one click, from the customer portal linked in ⚙️ Settings → Account. There is no notice period and no cancellation fee. You keep full access until the end of the period you have already paid for.

2.7 Refunds

If you subscribed by mistake, or changed your mind, write to us within 14 days of a payment and we refund it in full. No questions, no form. After 14 days we do not refund a period that has already run, but you can cancel so that the next one is not charged.

2.8 What happens when your subscription ends

Nothing is deleted, nothing is locked, and editing never stops. When a Pro subscription lapses, the account returns to the Free plan: every map stays readable, editable and exportable — as a TabTree file, as an image, as a PDF, as Markdown — and up to ten of them keep syncing across your devices. Maps beyond those ten simply stay on the device where you made them until you subscribe again.

What Pro stops giving is the paid service: relayed AI credits and publishing to a link. Your own Claude API key keeps working on the Free plan.

Subscribe again and everything resumes where it stopped, with nothing to restore.

This is a commitment, not a courtesy: we deliberately do not hold documents hostage to a payment. The technical rule that enforces it is that writing on your own device is never blocked at all — what the free quota limits is only the number of maps the account keeps in sync.

2.9 Your content is yours

2.10 Acceptable use

Short, because it should be: do not use TabTree to break the law, to store material you have no right to hold, or to attack the service or other users. Do not resell access. One account, one person. We may suspend an account that does these things, and we will tell you why.

2.11 Availability

We aim for the service to be available at all times, but we do not offer a contractual uptime guarantee at this price, and we will not pretend otherwise. Two things soften that: the application keeps working offline, and every map also lives on your own device — an outage on our side stops syncing, not your work.

2.12 Changes to the price

If we change the price of a plan, we tell existing subscribers at least 30 days before it applies to them, by email. The period you have already paid for is never affected, and you can cancel before the new price takes effect.

2.13 If we ever discontinue TabTree

We would announce it at least 60 days in advance by email, stop taking new subscriptions and stop charging existing ones immediately, and keep the service running in read-and-export mode for the whole notice period so that everyone can take their maps with them. Your data would not be sold or transferred as part of any wind-down.

2.14 Liability

TabTree is provided as it is. To the extent the law allows, our total liability for any claim is limited to the amount you paid us in the twelve months before it arose. Nothing here limits liability that cannot legally be limited — including fraud, and death or personal injury caused by negligence. We are not liable for indirect or consequential loss.

Keep your own backups. ⌘S writes a complete .zemind file to your disk at any moment, and it is the only backup that depends on nobody but you.

2.15 Changes to these terms

We may update these terms. If a change materially affects you, we tell you by email at least 30 days before it applies. Continuing to use TabTree after that means you accept the new version; if you would rather not, cancel and we refund the unused part of your current period.

2.16 Governing law

These terms are governed by Moroccan law, in particular law no. 31-08 on consumer protection and law no. 53-05 on the electronic exchange of legal data. Any dispute falls to the courts of Casablanca. If you are a consumer resident elsewhere, this does not deprive you of the mandatory protections of your own country's law.

These terms are published in English, and the English text prevails.

3 · Privacy policy

How TabTree handles personal data, under Moroccan law no. 09-08 (supervised by the CNDP) and, because the data is hosted in the European Union, under the GDPR. We apply the same rights to everyone, wherever you live.

3.1 Who is responsible

The data controller is TARDIGRADE SARL, at the address in §1. Contact: info@ai4x.academy.

3.2 What we collect, and why

DataWhyBasis
Your email addressTo send the sign-in link and to reach you about your accountPerformance of the contract
Sign-in timestampsSecurity, and to spot a broken sign-inLegitimate interest
Your documents, their names, types, filing and thumbnailsTo keep your library and send it back to your other devices — this is the servicePerformance of the contract
Subscription state: active or not, plan, period end, the identifiers Polar returnsTo know whether the service is due to youPerformance of the contract
Technical server logs (IP address, request, time), kept briefly by our hostsSecurity and abuse preventionLegitimate interest

Without an account, we collect nothing at all. TabTree then makes no network request whatsoever — that is not a promise you have to take on trust, it is something you can check in three seconds by opening your browser's Network tab.

3.3 What we do not do

3.4 Where your data lives

Accounts and documents are stored by Supabase on Amazon Web Services in Paris, France (eu-west-3) — inside the European Union. Row-level security in the database means one account can only ever read its own rows.

3.5 Who else touches it (sub-processors)

ProviderWhat it doesWhat it sees
Supabase (AWS, Paris)Accounts, documents, subscription stateEverything in your account
Netlify (USA)Delivers the site and the application fileTechnical request logs. Never a document
BrevoSends the sign-in emailYour email address
Polar (only if you subscribe)Payment, invoicing, taxYour billing details and payment method — which we never see

Some of these are outside the European Union. Transfers rest on the European Commission's standard contractual clauses, or on the provider's own adequacy framework.

3.6 The AI features are yours, not ours

TabTree's optional AI features work only if you enter your own Anthropic or Google API key. That key is stored on your device and is never sent to us — it is not in your account, not in any document, and not in any exported file. When you use those features, the request goes straight from your browser to the provider you chose, under your own account with them. We have no access to it and keep nothing from it.

3.7 How long we keep it

3.8 Your rights

You may ask us to give you a copy of your data, correct it, delete it, restrict what we do with it, or object to it. Write to info@ai4x.academy and we answer within 30 days.

Portability is already built in, and you do not have to ask us for it: ⌘S writes any map to your disk as a complete, open file, at any time — including after your subscription has ended. There is no export queue and no waiting.

If you think we have handled your data badly, you can complain to the CNDP in Morocco, or to the data protection authority of your own country if you live in the European Union.

3.9 Security

All traffic is encrypted in transit (HTTPS). Data is encrypted at rest by our host. There is no password to leak, because there is none. Access to your rows is enforced by the database itself, not only by the application. We do not claim to be unbreakable; we claim to have built the boundaries where they can actually be checked.

3.10 Children

TabTree is not directed at children under 16, and we do not knowingly create accounts for them.

3.11 Changes to this policy

If we change how we handle data in a way that affects you, we update this page and tell account holders by email. The date at the top always says when it last changed.