Skip to main content

The cartolex logo

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.

The map of the demo project: the themes on the left, a person and their co-authors on the map, their themes, keywords and co-authors on the right.

Install

  • The installer kit (no programming, no administrator rights): download cartolex-installer-<version>.zip from the releases, unzip it and double-click the launcher of your system (Install cartolex.command on macOS, Install cartolex.bat on Windows, install-cartolex.sh on Linux). It installs everything in a cartolex folder 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/:

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). All versions: doi:10.5281/zenodo.23223331. 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.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cartolex 1.0.3
File Size Uploaded
cartolex-1.0.3.tar.gz 3.8 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for cartolex 1.0.3
File Interpreter ABI Platform
cartolex-1.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 7.9 MB

Release files / cartolex-1.0.3.tar.gz

Download URL cartolex-1.0.3.tar.gz
Size 3.8 MB
Tags Source
SHA-256 checksum
How to use checksums
3a5322f69f9e54b7fca7ff747e074ac3361c5dc0304f163735cd055125734887
BLAKE2b-256 checksum
How to use checksums
73e7cd03eb2b152c48fbfa739872971f3792551dc59e0b94bba4f3817e980418
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 8, 2026.

Transparency log

Release files / cartolex-1.0.3-py3-none-any.whl

Download URL cartolex-1.0.3-py3-none-any.whl
Size 4.1 MB
Tags Python 3
SHA-256 checksum
How to use checksums
3da6962b5c7ef50a8842f94a7ae38115bc14ca7bf4172230b3c0416d4ac440b5
BLAKE2b-256 checksum
How to use checksums
30efdf7040193c18cb262a28d737c2f1e20b126018acbf59070ab876ee582983
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 8, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.3 This release

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page