We use cookies

We use cookies and similar technologies to enhance your browsing experience, analyze site traffic, and personalize content and ads. By clicking "Accept", you consent to our use of cookies. Learn more in our Privacy Policy.

Privacy Policy - JavaScript & React Editor

Effective date:

Published by Cosmovex

Cosmovex built the JavaScript & React Editor (JSVEdit) app as an ad-supported application with an optional Pro upgrade. This Privacy Policy explains what information JSVEdit processes, how that information is used, and the choices you have when using the app.

The short version

Your code stays on your device by default. Two things send data off your device, and both happen only because you asked for them: importing an npm package fetches that package from a public CDN, and using Publish to the web uploads that project so it can be served at a public link. Everything else — editing, running, previewing, console output — runs locally.

Information We Process

  • JavaScript, TypeScript and JSX source files: code you write, open, or import is stored on your device and executed on your device. It is not uploaded to us unless you use the Publish feature described below.
  • React and TypeScript preview rendering: the React runtime and the JSX/TypeScript transpiler are bundled inside the app, so previews of self-contained projects render without network access.
  • Console output: logs, warnings, and errors from your program are displayed locally and are not transmitted to us.
  • Published projects: if you choose to publish, the project's code is uploaded to our hosting backend and served publicly. See Publishing to the Web.
  • An anonymous account identifier: publishing creates an anonymous Firebase Authentication identifier so the app can tell which published pages are yours and let you update or remove them. It contains no name, email address, phone number, or other personal identifier, and you are never asked to sign in or create an account.
  • npm package names: when your code imports an npm package, the package name and version are requested from the public CDN that serves it. Your own source code is not sent in that request.
  • App preferences: your theme choice, editor settings, snippets, and session history are stored locally on your device.
  • Usage and ad data: if ads are enabled, AdMob or related Google Mobile Ads services may collect device and advertising data as described in Google's own privacy documentation.
  • Analytics and diagnostics: Firebase Analytics and Firebase Crashlytics may collect app stability, usage patterns, and crash reports to improve reliability and user experience.

Publishing to the Web

Publish to the web is an optional Pro feature. It is never automatic — a project leaves your device only when you tap Publish for that project.

  • What is uploaded: the code of the project you publish, bundled into a single web page, together with the title you give it. Multi-file projects are uploaded in full. Other projects, saved files, preferences, and console history are not uploaded.
  • Where it is stored: Google Firebase Realtime Database, and it is served from our hosting at js-vedit.web.app.
  • Who can see it: anyone with the link. Published pages are not password protected. The address contains a random identifier and we do not list published pages anywhere, but the page is public, and anyone you share the link with can open it and can pass it on. Please do not publish code that contains passwords, API keys, access tokens, or personal information.
  • Updating and removing: publishing the same project again replaces the contents at the same link. You can unpublish any page from "My published pages" inside the app, which deletes it from our database and takes the link offline. Copies that other people already saved or shared are outside our control.
  • How long it is kept: a published page stays online until you unpublish it, or until we remove it under the Reporting and Takedown section below.
  • Viewing a published page: published pages load the JSX transpiler, and any npm packages the project imports, from public CDNs. Those CDNs receive the ordinary request information — such as an IP address and browser user agent — of whoever opens the page.

How We Use Information

  • To let you write and run JavaScript and TypeScript directly on your device.
  • To render your React components as a live preview.
  • To display console output, errors, and stack traces inline.
  • To resolve the npm packages your code imports so they run.
  • To store and serve the projects you explicitly choose to publish, and to associate them with your anonymous identifier so only you can change or remove them.
  • To remember your editor settings, session history, and preferences.
  • To improve app performance, reliability, and product quality.
  • To display ads in supported versions of the app, where applicable.

Local Storage

Apart from the projects you publish, JSVEdit keeps your data on your device. Source files, sessions, snippets, preferences, and preview caches are stored locally. That data remains on your device until you remove it, clear the app's storage, or uninstall the app.

Network Access

Writing and running a self-contained project does not require network access — the React runtime and the JSX/TypeScript transpiler are bundled with the app. The app makes network requests in these cases:

  • Resolving npm packages your code imports, from esm.sh
  • Loading the code formatter and the JSX transpiler used for published pages, from unpkg.com and cdn.jsdelivr.net
  • Uploading and removing pages you publish
  • Ads, analytics, and Crashlytics diagnostics
  • The rotating cross-promotion banner shown on the home screen
  • Purchases and entitlement checks through Google Play

Other than projects you publish, your source code, file contents, and console output are not sent over the network.

Advertising

JSVEdit may use Google AdMob to show interstitial and app-open ad formats. AdMob may collect and process identifiers, device information, approximate location, and ad interaction data to deliver and measure ads. Upgrading to Pro removes ads.

In-App Purchases

JSVEdit offers an optional Pro upgrade, available as a renewing subscription or a one-time purchase. Purchases and renewals are processed by Google Play; we do not receive or store your payment details. Purchases are subject to Google's terms and privacy policies, and subscriptions are managed from your Google Play account.

Third-Party Services

JSVEdit relies on third-party services such as:

  • Google Play Services and Google Play Billing
  • Google AdMob
  • Firebase Analytics
  • Firebase Crashlytics
  • Firebase Remote Config
  • Firebase Authentication, Realtime Database, and Hosting — used only for the Publish feature
  • The public package and tooling CDNs esm.sh, unpkg.com, and cdn.jsdelivr.net

Data Sharing

We do not sell your source code, project files, or personal data. Data may be shared only with service providers required to operate app features, such as hosting, advertising, analytics, app distribution, or diagnostics infrastructure. Projects you publish are made publicly accessible by design, at your request.

Data Retention

Local app data remains on your device until you remove it, clear the app's storage, or uninstall the app. Published pages remain on our servers until you unpublish them or we remove them under the Reporting and Takedown section. Data collected by third-party services such as AdMob and Firebase is retained according to those providers' own policies.

Reporting and Takedown

Every published page carries a report link. If a published page contains unlawful, abusive, deceptive, or infringing content, or content published without the rights holder's permission, write to support@cosmovex.in with the link. We remove pages that break these rules, and we may remove a published page or withdraw access to the Publish feature where it is being misused.

Children's Privacy

JSVEdit is not intended for children under 13, and we do not knowingly collect personal information from children through the app. The Publish feature makes content publicly accessible on the internet and is not intended for use by children.

Security

Published pages can only be changed or removed by the anonymous identifier that created them, enforced by our database security rules. We take reasonable steps to protect data processed by the app, but no method of storage or transmission is completely secure, and a published page is public to anyone holding its link.

Your Choices

  • You can delete individual files from inside the app.
  • You can choose never to publish; nothing is published unless you tap Publish.
  • You can unpublish any page at any time from "My published pages", which deletes it from our servers.
  • You can uninstall the app to remove all locally stored data from your device. Uninstalling does not remove pages you have already published — unpublish them first, or write to us to request removal.
  • You can upgrade to Pro to disable all advertising.
  • You can manage ad personalization and advertising controls through your device and Google settings.

Changes to This Policy

We may update this Privacy Policy from time to time. When we do, we will post the updated version on this page and revise the effective date.

Contact Us

For privacy-related questions about JavaScript & React Editor, contact trionapps@gmail.com. For reports about a published page, contact support@cosmovex.in.