Skip to main content

Anno-Mage: A Semi Automatic Image Annotation Tool

PyPI version PyPI - Python Version Publish to PyPI Tests License

Demo

Semi-automatic image annotation toolbox powered by PyTorch object detection models, including open-vocabulary zero-shot detection via OWL-v2. Available as a web app (FastAPI + React).


Web App

See web/README.md for installation, usage, and API reference.

Quick start:

# Backend (port 8000)
cd web/backend && python main.py

# Frontend (port 3000)
cd web/frontend && npm install && npm run dev

Or use the convenience script:

cd web && bash start.sh

PyPI Distribution

Install from PyPI

pip install anno-mage
anno-mage

The app opens in your browser automatically. Annotations are saved to ~/.anno-mage/annotations/.

Publish a Release

Releases publish automatically to PyPI when a version tag is pushed. GitHub Actions builds the frontend, packages everything, and publishes via PyPI Trusted Publishers (no tokens required).

One-time PyPI setup:

  1. Go to your PyPI project → Manage → Publishing → Add a new publisher
  2. Set: GitHub repo virajmavani/semi-auto-image-annotation-tool, workflow release.yml, environment pypi

To release:

git tag v2.0.1
git push origin v2.0.1

That's it — the workflow in .github/workflows/release.yml handles the rest.

Build Locally

To build the package without publishing:

Prerequisites:

pip install build
npm install  # inside web/frontend if not already done
bash build_release.sh

This compiles the React frontend, copies the build into anno_mage/static/, and produces wheel and sdist artifacts in dist/.


Output Formats

Both interfaces produce identical output:

Format Location Description
CSV annotations/annotations.csv image_path,x1,y1,x2,y2,label per row
Pascal VOC XML annotations/annotations_voc/ One XML file per image

Acknowledgments

Join the developers channel

Slack: https://join.slack.com/t/annomage/shared_invite/zt-dh4ca9du-4VOcwUMCSNA6lmyG~tNUPg

Metadata

Release files for anno-mage 2.0.5

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

Source distribution (sdist)

Source distribution for anno-mage 2.0.5
File Size Uploaded
anno_mage-2.0.5.tar.gz 194.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for anno-mage 2.0.5
File Interpreter ABI Platform
anno_mage-2.0.5-py3-none-any.whl Python 3 none any Details

Total release size: 394.6 kB

Release files / anno_mage-2.0.5.tar.gz

Download URL anno_mage-2.0.5.tar.gz
Size 194.6 kB
Tags Source
SHA-256 checksum
How to use checksums
937c11534ba2c13547e75a2d15086433e0790313d1f1d3762feb6330ba96ee76
BLAKE2b-256 checksum
How to use checksums
6cbb72ef7cdd27f8ae3a4d31191f0b5ecde6e332db825f67b4cf07d930b9978d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Apr 16, 2026.

Transparency log

Release files / anno_mage-2.0.5-py3-none-any.whl

Download URL anno_mage-2.0.5-py3-none-any.whl
Size 200.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d14b5e69cff44525378059c0e3c54b46e4f46b375a355afecdd7f0e59cebf671
BLAKE2b-256 checksum
How to use checksums
ac3f48dec0d83f9a8ab0146559de7e07d2a8962042516e9feda82b9d369c51e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Apr 16, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.0.5 This release

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.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