This page covers Ovi's security posture and vulnerability-disclosure process, the open-source software we ship, and our accessibility status. It complements the Privacy Policy and the EULA.
- Security — what backs the marketing claims, how to report a vulnerability, breach notification.
- Open-Source Notices — every third-party library we bundle, by category.
- Accessibility — WCAG 2.2 AA target, current status, known gaps.
Security
Security claims and what backs them
The marketing copy on getovi.in uses three claims that have compliance weight; here is what each one actually means in code.
- Local-only: the desktop app reads only folders you explicitly open with the file picker or via
ovi <path>. It does not enumerate other locations on disk and it never uploads file contents, names, or paths anywhere. The runtime guard inprivacy.tsrejects any analytics property whose key matches/path|filename|content|clipboard|prompt/ias a final defence against accidental capture. - Read-only: the file system plugin in the Tauri capabilities config grants read access only. The app has no write, rename, move, or delete handlers, and the codebase contains no calls that would require them.
- Signed installer (forthcoming): code-signing of the Windows installer is on the roadmap but not yet shipped. Until it lands, Microsoft Defender SmartScreen may warn about the publisher; the warning is honest and the FAQ explains how to proceed. We will update this page once signing is in place.
How to report a vulnerability
Email [email protected] with the subject line Security report. Please include:
- The Ovi version (Settings → About) or the URL on getovi.in.
- A description of the issue and what you believe its impact is.
- Steps to reproduce, with the smallest possible example.
- Any logs, screenshots, or proof-of-concept artefacts that are safe to share.
- How we can reach you for follow-up.
We aim to acknowledge reports within 3 business days and to triage based on severity. Please do not publicly disclose the issue before we have had a reasonable chance to fix it, unless law requires you to do so.
Please do not run destructive tests, pivot to unrelated systems, exfiltrate data beyond what is needed to demonstrate the issue, or use spam, malware, social engineering, or extortion. Acting in good faith and within these limits, we will not pursue action against you for your research.
A machine-readable copy of this contact is published at /.well-known/security.txt.
Baseline security measures
- HTTPS everywhere. All website traffic, all PostHog ingest (via
v.getovi.in), and all updater traffic (viaupdater.getovi.in) use TLS. - Secrets are out of the client and the source repository. The PostHog ingest key is a public ingestion-only token and is the only key intentionally embedded in the website bundle. The Tauri updater's signing keypair is stored offline.
- Least-privilege Tauri capabilities. The desktop app declares only the OS capabilities it actually needs (read filesystem, network for PostHog/updater, dialog, store, opener). It does not request shell, clipboard write, or notification capabilities.
- Dependency hygiene. We pin all production dependencies and apply security advisories from npm-audit and cargo-audit on each release.
- Backups. The marketing site is statically generated and reproducible from source; the updater manifest lives in version control. There is no user data stored on our infrastructure to back up.
What we do not claim
Ovi is not certified for SOC 2, ISO 27001, HIPAA, PCI DSS, FedRAMP, or any other regulated compliance framework. We do not accept regulated personal data (health, financial, biometric, children's data, etc.) and the product is not designed to process it. Please do not paste regulated data into the application unless you have determined for yourself that local-only handling on your own machine is appropriate for that data class.
Breach notification
Because Ovi collects only a small set of anonymous usage events keyed to a random per-device UUID, the realistic blast radius of a security incident on our infrastructure is limited to that aggregate analytics data. If we become aware of a breach that nonetheless affects our users:
- We will assess the facts the same day we learn of them.
- Under the EU GDPR, we will notify the relevant supervisory authority within 72 hours of becoming aware where the breach is likely to result in risk to data subjects' rights.
- Under India's DPDP Act, we will notify the Data Protection Board and affected users without undue delay, in line with the Rules in force at the time of the incident.
- We will publish a status note in this section with the facts we can responsibly share.
To suggest the existence of a breach you suspect, use the same email above with the subject line Suspected breach.
Open-Source Notices
Ovi is built on top of a great deal of open-source software. The list below covers the projects whose code we ship in the desktop application and on getovi.in, with versions, licenses, and source URLs. Each project remains governed by its own license. Where a project is dual-licensed, that is shown as A / B. Transitive dependencies are not enumerated here individually; the manifests in the source repository (package.json and src-tauri/Cargo.toml) are the authoritative source.
Desktop runtime — Rust crates
-
tauri— v2.10.3 — Apache-2.0 / MIT -
tauri-plugin-dialog— v2.7.0 — Apache-2.0 / MIT -
tauri-plugin-fs— v2.5.0 — Apache-2.0 / MIT -
tauri-plugin-opener— v2.5.3 — Apache-2.0 / MIT -
tauri-plugin-store— v2.4.2 — Apache-2.0 / MIT -
tauri-plugin-updater— v2.10.1 — Apache-2.0 / MIT -
serde— v1.x — Apache-2.0 / MIT -
serde_json— v1.x — Apache-2.0 / MIT -
notify-debouncer-full— v0.6 — Apache-2.0 / MIT -
sysinfo— v0.32 — MIT -
fs2— v0.4 — Apache-2.0 / MIT -
ignore— v0.4.31 — Unlicense / MIT -
windows-sys— v0.59 — Apache-2.0 / MIT
Desktop runtime — JavaScript core
-
react / react-dom— v19.2.5 — MIT -
@tauri-apps/api (and plugins)— v2.10.x — Apache-2.0 / MIT -
zustand— v5.0.12 — MIT -
react-arborist— v3.4.3 — MIT -
@tanstack/react-virtual— v3.13.23 — MIT -
@dnd-kit/core, sortable, utilities— v6.x / 10.x / 3.x — MIT -
motion (Framer Motion)— v12.x — MIT -
lucide-react— v1.8.0 — ISC -
@radix-ui/react-* (dialog, select, slider, switch, tabs, context-menu)— v2.x / 1.x — MIT -
@radix-ui/colors— v3.0.0 — MIT -
uuid— v14.x — MIT
Markdown rendering pipeline
-
ammonia— v4.1.4 — Apache-2.0 / MIT -
base64— v0.23.1 — Apache-2.0 / MIT -
comrak— v0.54.0 — BSD-2-Clause -
getrandom— v0.4.3 — Apache-2.0 / MIT -
html-escape— v0.2.15 — MIT -
katex-rs— v0.4.6 — Apache-2.0 / MIT -
lol_html— v3.0.1 — BSD-3-Clause -
merman— v0.8.0-alpha.5 — Apache-2.0 / MIT -
merman-elk-layered— v0.8.0-alpha.5 — EPL-2.0 -
percent-encoding— v2.3.2 — Apache-2.0 / MIT -
roxmltree— v0.21.1 — Apache-2.0 / MIT -
syntect— v5.3.0 — MIT -
tokio— v1.x — MIT -
two-face— v0.5.2 — Apache-2.0 / MIT -
unicode-segmentation— v1.13.3 — Apache-2.0 / MIT -
unified— v11.0.5 — MIT -
remark-parse / remark-rehype / remark-gfm / remark-math / remark-frontmatter / remark-gemoji / remark-smartypants / remark-definition-list / remark-github-blockquote-alert— vvarious — MIT -
rehype-katex / rehype-raw / rehype-react / rehype-sanitize / rehype-slug— vvarious — MIT -
shiki— v4.0.2 — MIT -
katex— v0.16.45 — MIT -
mermaid— v11.17.0 — MIT -
@mermaid-js/layout-elk— v0.2.3 — MIT -
elkjs— v0.9.3 — EPL-2.0 -
dompurify— v3.4.13 — Apache-2.0 or MPL-2.0 (dual)
Analytics and fonts
-
posthog-js— v1.372.x — MIT -
@fontsource/poppins— v5.x — OFL-1.1 (font) / MIT (package) -
@fontsource/roboto— v5.x — Apache-2.0 (font) / MIT (package)
Website build (getovi.in)
-
astro— v6.1.10 — MIT -
tailwindcss— v4.2.x — MIT -
vite— v8.x — MIT -
typescript— v6.0.3 — Apache-2.0
Reporting an attribution issue
If you maintain one of the projects above and believe an attribution or license entry on this page is wrong or missing, please email [email protected] with the subject line OSS notice correction and we will fix it on the next release.
Accessibility
This section describes Ovi's accessibility target, the current conformance status, and the gaps we know about. We treat this as a living statement — when something improves or regresses, this is the first thing we update.
Target
The website at getovi.in and the Ovi desktop application both target WCAG 2.2 Level AA for the public-facing surfaces. Where AAA is reachable for a specific component without trade-offs against the rest of the experience, we aim for AAA.
Current status
Both surfaces are partially conformant with WCAG 2.2 AA. Conformance has been assessed by the developer through manual checks against the WCAG checklist, with assistance from the underlying component libraries (Radix UI on the desktop app, semantic HTML on the website). The product has not yet undergone an independent third-party accessibility audit.
The components we lean on most heavily — Radix UI primitives for dialogs, menus, tabs, switches, and select boxes — are designed to meet WAI-ARIA Authoring Practices, and we use them with their default keyboard and screen-reader behaviour intact.
Known gaps
- No formal screen-reader sweep yet. Individual components have been spot-checked with NVDA on Windows but there is no full audit covering every page and screen with multiple assistive technologies. Owner: Shivam. Target: before the macOS / Linux release.
- Mermaid and KaTeX rendered output. Diagrams and equations rendered inside documents are vector graphics and not always announced meaningfully by screen readers. Where the source markdown contains alt text or a fallback, we render it; where it does not, the visual diagram is the only signal. We are tracking better fallbacks.
- Cookie consent banner. The banner moves focus to the Accept button when it appears and is reachable by keyboard; ESC does not dismiss it (closing without choosing is not consent — workflow rule). This may surprise users expecting ESC to close any dialog. We have not yet decided whether to add a "Decide later" affordance instead.
- Colour contrast on muted text. The "Coming soon" placeholder rows in the download section use a soft grey on warm cream; the contrast meets AA for text but is close to the lower bound on some monitors. This is on the polish list.
- High-contrast / Windows themes (desktop). The desktop app respects the OS dark/light setting but has not been tuned for Windows high-contrast themes specifically.
Compatibility
The website is tested against current versions of Chrome, Edge, Firefox, and Safari. The desktop application is currently Windows-only and uses the system WebView2 runtime; macOS and Linux builds are on the roadmap and will be re-checked for accessibility before launch.
Feedback
If you run into an accessibility issue, please email [email protected] with the subject line Accessibility. Including the page or screen, the assistive technology you were using if any, and a short description of the issue helps us reproduce and fix it. We aim to respond within five working days.