Skip to main content

research-timeline

Track, visualize, and export research timelines — from first AI interaction to scientific discovery.

CI PyPI DOI License: MIT Python

research-timeline documents the process of research, not just its artifacts: every milestone of a project (the first AI interaction that shaped the protocol, the first QPU commit with its evidence, pivots, controls, submissions, publications) is recorded in a single versioned JSON file with typed events, quantitative metrics, and supporting evidence.

RETTIFICA (01/09/2026): una precedente asserzione di unicità di questo strumento è stata formulata senza una verifica di mercato documentata. La verifica del 01/09/2026 ha evidenziato strumenti simili esistenti (timeline-fishbone-generator, timeline-maker, SubThesis Timeline Generator, Research-Timeline-Planner, The Timeline Project, altri). Questo strumento non è unico: si distingue per tracciamento AI→scoperta, evidence QPU e disclosure ai_role, ma la sua esistenza non è isolata.

Terminal preview

Real output (v0.2.4, Typer + rich):

$ research-timeline init -n "PASM DTC Discovery" -d "Classical prethermal DTC via PASM on IBM Quantum" -a "Alessandro Tulli" -o timeline.json
[OK] Initialized timeline at timeline.json
  Project: PASM DTC Discovery (quantum)
  Author: Alessandro Tulli (without academic degrees)

$ research-timeline log T1 --type T1 --desc "First QPU campaign: 14 experiments, Z>50 sigma" --z-combined 50.0 --backend ibm_kingston --job-ids abc123,def456 --tags commit,qpu -f timeline.json
[OK] Logged event T1: First QPU campaign: 14 experiments, Z>50 sigma

$ research-timeline validate -f timeline.json
[OK] Timeline is valid!

$ research-timeline stats -f timeline.json
Events:      1
Date window: 2026-09-14 .. 2026-09-14 (0 days)
By type:
  T1             1
By tag:
  commit         1
  qpu            1

Features

Feature Description
Typed events T0, T1…Tn (ordered research phases) plus pivot, control, submission, publication, milestone
Metrics & evidence Attach z-scores, shots, backends, IBM Quantum job IDs, git commits, data/code links to any event
AI-role disclosure Each timeline declares how AI was used: cognitive_prosthesis, co_pilot, autonomous_agent
Exports LaTeX table (papers/reports), Markdown, standalone HTML, schema.org JSON-LD, W3C PROV-O (JSON-LD), CSV, publication-ready Gantt (TikZ)
JSON Schema draft-07 Machine-readable schema (schema/timeline.schema.json) with validate and CI-friendly exit codes
Filters & stats --type, --tag, --since, --until; duration window, per-type and per-tag counts
Date ranges --end-date turns a point event into a range (rendered as a bar in the Gantt)
Git-native storage One human-readable, diff-friendly JSON file — zero lock-in

Install

pip install research-timeline

Quick start (3 steps)

# 1) initialize a timeline
research-timeline init -n "My project" -d "What the research is about" -a "Your Name" -o timeline.json

# 2) log a typed event with metrics and evidence
research-timeline log T1 --type T1 --desc "First result" --z-score 5.0 --git-commit abc1234 --tags result -f timeline.json

# 3) export (latex | markdown | html | jsonld | csv | gantt | prov)
research-timeline export --format latex -o timeline.tex --file timeline.json

See example/timeline.json for a real-world timeline (the PASM DTC Discovery project, N47Lab MatterMemory research program) and the generated exports in example/.

Documentation

Full documentation: https://strugiss.github.io/research-timeline/ — install, commands, file format, exports, FAQ.

AI Usage Disclosure

This package was developed with the assistance of generative AI tools (interactive AI coding assistants with agentic workflows): initial code scaffolding, the test suite, and documentation drafting (June–August 2026). All AI-assisted output was reviewed by the human author, with AI-assisted review for verification; design decisions (schema, event types, export contracts, ai_role semantics) and the final acceptance of every change were made by the human author.

This is an AI-augmented development model: the AI extends the author's capabilities (the cognitive_prosthesis role recorded by the tool itself), while every decision, review, and responsibility remain human. See docs/ai-disclosure.md and AI_POLICY.md for the full policy.

Citation

If you use research-timeline in your research, please cite it:

@software{tulli_research_timeline_2026,
  author  = {Tulli, Alessandro},
  title   = {research-timeline: track, validate, and export the research process as a typed JSON timeline},
  year    = {2026},
  doi     = {10.5281/zenodo.21862618},
  url     = {https://github.com/Strugiss/research-timeline},
  license = {MIT}
}

A machine-readable citation is provided in CITATION.cff.

Community & archive

License

MIT — see LICENSE.

Contributing

Contributions are welcome: see CONTRIBUTING.md for tests, coding conventions, and governance.

pip install -e ".[dev]"
pytest tests/ -v

Metadata

Release files for research-timeline 0.3.0

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

Source distribution (sdist)

Source distribution for research-timeline 0.3.0
File Size Uploaded
research_timeline-0.3.0.tar.gz 22.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for research-timeline 0.3.0
File Interpreter ABI Platform
research_timeline-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 40.1 kB

Release files / research_timeline-0.3.0.tar.gz

Download URL research_timeline-0.3.0.tar.gz
Size 22.2 kB
Tags Source
SHA-256 checksum
How to use checksums
e5ed0bf93ad5437718686b682242134c084ef4d896ec7846b9d36bfbd7b0542b
BLAKE2b-256 checksum
How to use checksums
fd80742c41167c499f070e2072728d6e5df2f3a5e7ecaddbf87b6bba221f65be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / research_timeline-0.3.0-py3-none-any.whl

Download URL research_timeline-0.3.0-py3-none-any.whl
Size 17.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bece91cde3ca2e00f50f484a728a6315e07c8b87306eb53806730825b464864c
BLAKE2b-256 checksum
How to use checksums
d3703517a36f0efe6b4711299c322ca3f67147b5908de4805add2419ad27476b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

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