# MyVision: a browser-only image annotation tool for computer vision training data

> MyVision is a free online labelling tool that draws bounding boxes and polygons, auto-annotates with COCO-SSD in the browser, and imports or converts existing datasets. The documentation is thin on limits, so here is what the repository actually shows.

**OvidijusParsiunas/myvision** — Computer vision based ML training data generation tool :rocket:

- Repository: https://github.com/OvidijusParsiunas/myvision
- Website: https://myvision.ai
- Stars: 609 · Forks: 72
- Language: JavaScript
- License: GPL-3.0
- Published: 2026-09-10 · Updated: 2026-09-10 · Language: en
- Canonical page: https://hysenlabs.com/projects/ovidijusparsiunas-myvision

## The gap MyVision fills: labelling without a server

Supervised computer vision needs labelled images, and the labelling step is usually the slowest part of a project. Most annotation platforms are hosted services or self-hosted servers: you upload images, other people can see them, and you depend on someone else's uptime. MyVision takes the opposite route. The README describes it as "a free online image annotation tool used for generating computer vision based ML training data", and the auto-annotation feature is explicit that the model "operat[es] locally on your browser" so that all data is retained "within the privacy of your computer".

The audience follows from that. It is for a single engineer or a small team preparing an object detection dataset who does not want to stand up infrastructure or send customer images to a third party. It is not a workforce tool: there is no reviewer role, no task queue and no mention of multi-user access anywhere in the README. If your labelling work is done by a distributed team of contractors, this is the wrong shape of product.

## How MyVision works: a webpack bundle, a browser, and COCO-SSD

The repository layout is a plain front-end project. Source lives in src, the built output is served from public, and webpack.config.js drives the build with the scripts in package.json. There is no backend directory, no database schema and no API surface in the top-level entries, which is consistent with the privacy claim: the annotation data has nowhere to go except the browser and the user's disk.

Two mechanisms carry the product. The first is the drawing layer for bounding boxes and polygons, with the README noting that polygon editing supports adding, removing and moving individual points. The second is auto-annotation: the README states that MyVision uses the COCO-SSD model to generate bounding boxes for images. That is a fixed, general-purpose detector, so it will produce boxes for the COCO class set and nothing else. It speeds up the boring images and does nothing for your domain-specific classes, which you still draw by hand.

Import and export close the loop. The README says you can import existing annotation projects and continue working on them, and that the same process can convert datasets from one format to another. The set of supported formats is presented as an image table in the README rather than as text, so the exact list has to be read from that table in the repository.

## Running MyVision: index.html, or npm install and watch mode

For annotating, the README is unusually blunt: "No setup is required to run this project, open the index.html file and you are all set!" The file is at public/index.html. Opening it in a browser gives you the tool, and the COCO-SSD model runs on your machine, so images do not leave it. Expect a first-load delay while the model is fetched, and expect an ordinary browser tab to be the limit of your working set.

If you want to modify the code, the README gives a different path. It states the requirements as Node version 10+ and NPM version 6+, then lists these commands verbatim from its local setup block:

```bash
# Requirements: Node version 10+ and NPM version 6+

# Install node dependencies:
$ npm install

# Run the project in watch mode:
$ npm run watch

# All changes should be made in the src directory and observed in publicDev
```

After npm install finishes, npm run watch starts webpack in watch mode and keeps running; reload the development output in publicDev after each rebuild.

## A first real session, and where the build output lands

The README is specific about where edits belong: "All changes should be made in the src directory and observed in publicDev". That is the loop for contributors. You edit in src, webpack rebuilds in watch mode, and you reload the development output rather than the shipped public bundle.

The production build is a separate script declared in package.json:

```bash
npm run build
```

That writes the bundled output rather than the watch-mode development tree, which is the version you would serve or open for a stable labelling session.

## What the repository does not promise

The package.json test script is "echo \"Error: no test specified\" && exit 1". There is no test suite. For an annotation tool that is a real risk: a coordinate transform bug or a format conversion that drops a field will not be caught by anything except your own eyes on the exported file. Treat every export as something to validate against your training pipeline before you label a thousand images.

The licence situation is also worth reading carefully. The repository's LICENSE file is GPL-3.0, while package.json declares "license": "ISC". Those two statements disagree, and the README does not resolve them. If you plan to redistribute MyVision or a modified version, that conflict is the first thing to settle with whoever handles licensing on your side. Using it internally to produce a dataset is a different question from shipping the tool, and this article is not legal advice.

Maintenance is a separate consideration. The only release listed is 1.0.0 from 2020-09-15, and the last push to the repository was on 2026-07-30. The README also does not document rollback, undo history beyond the drawing session, or any recovery path if a browser tab crashes mid-project.

## MyVision compared with Label Studio

Label Studio is the obvious alternative for teams that need more than drawing. The difference is architectural, not cosmetic: Label Studio is a server application with a web interface, projects, users and a documented API, which is what lets several annotators work on one dataset and lets you script imports and exports. MyVision is a static front end. You open a file, you label, you export.

That trade is real in both directions. Label Studio costs you a deployment, a database and an operational owner; MyVision costs you the absence of collaboration, accounts and automation. If your labelling is one person with a folder of images and a privacy constraint, the MyVision model is a better fit than standing up a service. If you need review workflows or programmatic dataset management, MyVision has no answer and Label Studio does.

## Who should adopt MyVision, and what to check first

Adopt it when the constraint is simplicity: one annotator, images that cannot be uploaded, bounding boxes and polygons, and a need to move between dataset formats. The zero-install path through public/index.html is the strongest part of the offer, and the browser-local COCO-SSD pass genuinely removes work on images full of common objects.

Do not adopt it for segmentation masks, keypoints, video, multi-user review or anything that needs an audit trail; the README documents none of these. Also skip it if you need a supported, tested build pipeline, since the test script exits with an error by design.

Before you commit, check three things in the repository itself. Read the format table image in the README and confirm it covers your target export. Do a one-image round trip through import and export to see whether the annotations survive. And reconcile the GPL-3.0 LICENSE file against the ISC field in package.json before you redistribute anything.

## Conclusion

Adopt MyVision if you need a zero-install, browser-local labeller for bounding boxes and polygons and you are comfortable with a GPL-3.0 obligation on redistribution. Do not adopt it if you need segmentation masks, keypoints, server-side collaboration or an audit trail; the README documents none of those. Before committing a dataset, verify the supported format table in the README against the exact export you need, confirm that your browser can hold your image count in memory, and check that the imported annotations survive a round trip through the format you actually train on.

## FAQ

### Does MyVision require a server or an account?

No. The README states that no setup is required and that you can open public/index.html directly, and it describes the auto-annotation model as operating locally in your browser so data stays on your computer. There is no mention of accounts or a backend anywhere in the repository layout.

### Which dataset formats can MyVision import and export?

The README says you can import existing annotation projects, continue working on them, and use the same process to convert datasets between formats. The actual list of supported formats is given as an image table in the README rather than as text, so it has to be read from that table.

### How do I run MyVision locally if I want to change the code?

The README lists Node version 10+ and NPM version 6+ as requirements, then npm install followed by npm run watch. It states that changes should be made in the src directory and observed in publicDev.

### What licence is MyVision released under?

The repository contains a GPL-3.0 LICENSE file, while package.json declares "license": "ISC". The README does not explain the discrepancy, so anyone redistributing the tool should resolve it first.

## Sources

- [License: GPL-3.0](https://github.com/OvidijusParsiunas/myvision/blob/master/LICENSE)
- [OvidijusParsiunas/myvision on GitHub](https://github.com/OvidijusParsiunas/myvision)
- [Project website](https://myvision.ai)
- [README](https://github.com/OvidijusParsiunas/myvision/blob/master/README.md)
- [Releases](https://github.com/OvidijusParsiunas/myvision/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/ovidijusparsiunas-myvision
