Last revised — 19 September 2026
TwoNote is a proprietary product built on free software. This page says which is which: what belongs to us and is licensed to nobody, what belongs to you and never left you, and which free components the application ships — with the written offer the copyleft ones require.
The TwoNote source code, its interface, its documentation and its assets are ours. They are not free software and not open source, they are held in a private repository, and no licence is granted over them — not now, and not automatically after any period of time.
Concretely: no right to use, run, copy, modify, translate, redistribute, resell or sublicense it, and none to lift a portion of it into another piece of work.
Holding a copy is not permission. Receiving the code, being given read access to the repository, or getting it for review or audit conveys none of the rights withheld above. Permission can come only from a writing signed by us — never from silence, from a tolerated use, or from a file happening to sit in the repository.
None of this touches the rights the law gives you and that you cannot waive — a back-up copy, observing how the program works, and decompiling it for interoperability, on the conditions article L122-6-1 of the French Intellectual Property Code and the equivalent European provisions set. A licence cannot contract those away, and this one does not try.
The name “TwoNote”, the logo and the visual identity sit outside any grant of their own. A permission concerning the code never carries the right to use them.
The repository carries the same terms in its LICENSE file. That file governs whoever holds the code; this page states the position publicly. They are changed together.
You may not deploy, host or operate an instance of TwoNote — for yourself or for anyone else — nor offer access to one, in any form.
There is one exception, and it is a door rather than a loophole: a separate written agreement. An organisation that needs its notes on its own machines — a school, a laboratory, a company under a policy that forbids third-party hosting — can have that, and it is negotiated. Container images and build recipes exist to serve such an agreement and our own development; their existence is not permission.
Write to contact@twonote.ink and say what you need to run and why. The answer is often yes.
Your notes, pages, notebooks and files are yours. We claim no right over them, and we could not exercise one if we did — they are encrypted before they leave your device and we cannot read them. You grant us only what running the service requires: storing the encrypted bytes and moving them between your devices and the people you share with.
A widget you write is yours too, and stays yours once published to the store. Publishing grants us only what distributing it requires — storing it, listing it in the catalogue, serving it to whoever installs it — and grants anyone with an account the right to install it and run it for their own use. Nothing more: not the right to modify it, not the right to redistribute it, and no exclusivity of any kind. You remain free to publish the same widget anywhere else, under any licence you like.
Withdrawing a widget removes it from the catalogue and from new installs; closing your account erases it from our side altogether. Neither reaches the copies already installed on other people's devices, which are theirs.
These three paragraphs restate sections 5 and 9 of the Terms of Service, which are what actually bind us. They are repeated here because someone reading a licence page should not have to go looking for the one part that says the licence does not apply to them.
Running your Python and MATLAB code, searching your notes without sending them anywhere, and drawing your diagrams all mean shipping whole runtimes into your browser. They are free software, served from this domain, and they remain under their own licences — nothing in section 1 restricts the rights those licences give you, and nothing here purports to replace them.
| Component | Used for | Licence | Upstream |
|---|---|---|---|
| GNU Octave 7.2.0 | MATLAB code blocks | GPL v3 or later | octave.org — WebAssembly build: github.com/rwl/octave-wasm |
| seshat | Turning handwritten formulas into LaTeX, on your device | GPL v3 or later | github.com/falvaro/seshat — our changes and build recipe: third_party/seshat/ |
| Pyodide — CPython 3.12, NumPy, pandas, Matplotlib, Pillow and their dependencies | Python code blocks | Each package under its own free licence (Mozilla Public License, Python Software Foundation licence, BSD and similar) | pyodide.org |
| ONNX Runtime Web | Running the search model in your browser | MIT | onnxruntime.ai |
| Mermaid | Rendering diagram blocks, and diagrams inside assistant replies | MIT | mermaid.js.org |
| all-MiniLM-L6-v2 | Semantic search over your notes, computed on your device | Apache 2.0 | huggingface.co/sentence-transformers/all-MiniLM-L6-v2 |
GNU Octave and seshat are copyleft, which gives anyone who receives this build the right to their corresponding source. For Octave that is version 7.2.0 as published upstream, together with the build recipe at github.com/rwl/octave-wasm. For seshat it is the upstream project plus our own modifications, which we hold in the third_party/seshat/ directory of our repository alongside the exact build recipe — a copyleft licence covers changes as much as the original. That repository is private, so this written offer is how the right is exercised, and it is not a formality: write to contact@twonote.ink and a copy will be sent to you.
The browser-side libraries the interface itself is built from — React, Yjs, TipTap, KaTeX and the rest — are under permissive licences (MIT, ISC, Apache 2.0, BSD and similar). They are listed with their versions in the package.json of the published build.
Everything refused above can be granted in writing. Usage licences, organisation instances, self-hosting under agreement, an audit of the source by a third party you trust: all of it is open to discussion, and one address handles it — contact@twonote.ink.
The same address serves the copyleft written offer above. A request for the corresponding source of Octave or seshat does not need a reason, is not a favour, and is answered with a copy.