cartolex
cartolex maps a body of texts by the words of their authors. Give it the people of a field (a list, a laboratory, an institution): it collects their texts from open services (OpenAlex, the ORCID registry, HAL…), finds the vocabulary they actually use, places every person, organisation and text in a lexical space, groups that vocabulary into themes and draws it all as an atlas, which you explore in the app and share as a website that opens offline.
Who talks the same. Distances in the lexical space measure how much people, teams or institutions talk the same about their subject, whether or not they work together; the co-authorship network, drawn on the same map, shows who does. The map shows what people write about, never how good their work is. cartolex was made for research fields; any texts whose authors are known will do, the articles of journalists for instance.
No programming is needed: everything happens in an app that runs in your web browser, on your own computer. You check each step on screen: who is who, which keywords count, what the themes are called.
Install
-
The installer kit (no programming, no administrator rights): download
cartolex-installer-<version>.zipfrom the releases, unzip it and double-click the launcher of your system (Install cartolex.commandon macOS,Install cartolex.baton Windows,install-cartolex.shon Linux). It installs everything in acartolexfolder of your home and adds a shortcut that opens the app. Version 1.0.0 does not run on Windows yet; a later 1.0 version will. -
With pip or uv, for people at ease with a terminal (Python 3.10 to 3.14):
uv tool install cartolex # or: python -m pip install cartolex cartolex models add en fr # the language models of your texts cartolex # opens the app in your browser
Details and troubleshooting: Installing cartolex.
Your first map
The app opens on its Projects screen: press Create the demo project (an invented community of coastal and marine scientists; nothing leaves your computer), then Build… on the overview and Build 9 stages. A minute later the map is there. The tutorial Your first map follows it step by step.
Documentation
The documentation comes with the app: the Documentation button (the question mark at the top of every screen) opens it for the version you run. Its sources are in docs/:
- What cartolex does, in its own words: people, texts, keywords, themes, the map, the AI steps, sharing;
- tutorials: your first map, map an institution, start from a list of names, clean the keywords with an AI copilot, shape the themes, explore the map, share a site;
- guides: collection, keywords, the build, privacy, very large projects;
- the method in one page and its references.
Privacy
Everything stays on your computer. Only two steps reach the network, both said before they start: the collection of publications (names and identifiers go to the open bibliographic services) and the optional AI clean-up of the keywords by API (keyword strings only, never texts or people). See Privacy and personal data.
Built on
spaCy and its language models find the noun phrases of the texts (English, French, Portuguese, Spanish, German, Italian); scikit-learn, SciPy and NumPy weight them, build the lexical space and group the themes; UMAP and openTSNE draw the map; OpenAlex is the first source of texts. The methods behind each step, with their references: docs/references.md.
How to cite
cartolex is archived on Zenodo, one record per version,
each with its DOI: please cite the record of the version you used (the app's
About page gives the version). CITATION.cff (« Cite this
repository » on GitHub) and codemeta.json carry the
reference for reference managers; How to cite gives a BibTeX
entry, and the references the methods to cite beside it.
Authors and licence
cartolex is written by Elisa Klüger and Pierre Ronceray. It is free software under the MIT licence: see LICENSE.
For developers
cartolex is a Python package (cartolex.lexicon and cartolex.atlas for the
engine, cartolex.collect for collection, cartolex.project and
cartolex.build for the project format and its build, cartolex.app for the
web app) with a command line that does everything the app does
(docs/dev/command-line.md). Setting up, checking a
change, the corpus contract and the public programming interface are in
CONTRIBUTING.md; the rules of the repository in
AGENTS.md; the code's map in ARCHITECTURE.md;
driving the engine from your own application in
INTEGRATION.md; the changes of this release line in
CHANGELOG.md.
Metadata
Release files for cartolex 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cartolex-1.0.0.tar.gz | 3.8 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cartolex-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 7.9 MB
Release files / cartolex-1.0.0.tar.gz
| Download URL | cartolex-1.0.0.tar.gz |
|---|---|
| Size | 3.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c83623446576cab4a3b114dca09203726c79172969a5bea95933a93f1892e357
|
|
BLAKE2b-256 checksum How to use checksums |
127a86a15a56d4e7785232cca2746dae44f3a20f6af31384293a6c77a8b20470
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.
Transparency logRelease files / cartolex-1.0.0-py3-none-any.whl
| Download URL | cartolex-1.0.0-py3-none-any.whl |
|---|---|
| Size | 4.1 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
521fff91a020f8b1bbd3558b2f4be23396ae442268e60f905e2b3c39e50492ea
|
|
BLAKE2b-256 checksum How to use checksums |
ab15349246c7fc2b3d437b2e2aab5df16ef1adbf966b0c1084cd1b74a89c76cc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.
Transparency log