Convert your Web App to a Desktop App in 2 Minutes.

Globe

Your Icon on the Desktop

With ToDesktop your users can install your web app to their computer and launch it from the same place as other desktop apps on Windows, Mac and Linux.

  • Increase Active Users “Users who download our desktop app are more active than our existing users and we've reduced our churn rate as a result.”

    Michael Fitzgerald
    Co-Founder of Interplay
  • Less Cluttered “Dropping the URL bar makes our UI look much cleaner and less cluttered. It makes it easier for our customers to keep the app open all day and not get lost in a sea of tabs.”

    Joe Lennon
    CTO of Workvivo
  • Native Look and Feel “Having that ‘installed’, native feel is important to our users. It gives them confidence that our app is solid.”

    Ryan O'Neill
    CEO of LegitFit
  • Save Time & Money “I was going to build and code a desktop app manually (using Electron). ToDesktop has just saved me a ton of time!

    Owen O'Doherty
    CEO of Carefolk
Your app
Grayscale logo before being clickedFull-color logo with confetti exploding after being clicked
A mouse cursor

Just Works… Everywhere!

ToDesktop builds your app for every operating system. You will get a customized installer for Windows, Mac and Linux.

We go even further and sign your desktop app with EV Microsoft Authenticode and Apple Gatekeeper certificates. This is super-important because it means that your app will download and install seamlessly without triggering any warning dialogs.

Customer Story

Interplay's customers wanted a desktop app. Michael and his team delivered in one day with ToDesktop.

“I entered the details and uploaded our icon. ToDesktop gave me an installable app for Mac and Windows instantly. We rolled the desktop version of Interplay out to our beta customers the next day.”Michael Fitzgerald
Co-founder of Interplay.

Michael has delivered a desktop app faster than he could have ever hoped. Now his team can focus on their web app and not worry about the ongoing effort of maintaining a desktop app.

A ToDesktop customer's app screenshot

Completely Customizable

ToDesktop will detect your icon and colours when you give it your web app's URL. Don't worry you can edit them if we don't get it right.

You can edit your app's icon and the window frame UI.

The best part is that you can see exactly what your desktop app will look like before you click the build button.

$49 per month

With auto-updates included.
Get started by entering the URL of your web app below.
Globe

How much would it cost to build in-house without ToDesktop?

Developer time is expensive. Adjust the sliders below to estimate the first year cost of a desktop app without ToDesktop.

50 hrs
10 hrs
5 hrs/month
$50/hr
$798/year
$6,798

Want to stay updated?

Frequently Asked Questions

Is ToDesktop for me?

That depends! If you have a web app that you would like to distribute to your users as a desktop app that which can download, then ToDesktop is for you.

If you want to make a desktop app of a website for just your personal use, ToDesktop is probably overkill.

What's the difference? There are a few extra considerations which become more important when creating a desktop app for distribution to your customers:

  • Installer — Mac users expect a "drag to applications" DMG file. Windows users expect an installer and they also expect to be able to uninstall it from the control panel.
  • Code Signing — If your app isn't code signed then by default Windows Authenticode and Apple Gatekeeper will prevent your desktop app from being opened.
  • Auto-update — There is still a web browser running "underneath" your desktop app, it's important to keep this updated for two reasons. 1. Security issues + vulnerabilities should be patched over time. 2. You don't want to be stuck supporting an old web browser in 5 years time because your desktop app's browser hasn't been updated.

ToDesktop offers these features as standard and will save you a ton of development time and effort if you're looking to distribute your app to your users.

How does ToDesktop work under the hood?

It can help to think of ToDesktop as a custom web browser dedicated to your web app or website. It shows a live version of your site or web app at all times, just like a web browser. There is no toolbar or address bar or refresh buttons but it behaves and functions just like a web browser. This means you don't need to do anything to your existing site, it will just work — If your site works in Google Chrome then it is compatible with ToDesktop.

ToDesktop is built on a technology called Electron, but no Electron experience or even coding experience is required to create a desktop app with ToDesktop. Rest assured, the underlying "browser" engine is updated regularly through auto-updates, so the desktop version of your app will always have the latest web features available.

Which version of Electron/Chromium is used?

ToDesktop is currently based on Chromium 73 and Electron 5.0.2. When Electron releases a new version you can expect us to update in a timely manner once we have finished testing (a few weeks, usually). Security fixes are prioritized and we endeavour to release them as quickly as possible. All updates are pushed out to all of your users over auto-update.

How does my app get updated?

Everytime that an app built with ToDesktop is launched then it will contact the ToDesktop update server to see if there is a newer version available.

If there is a newer version available then it will be installed automatically and the user will be notified that the new version will be run the next time that the app is opened.

Auto-updates are published on two occasions:

  1. An app detail (name, icon, default window dimensions) is changed.
  2. Electron or the ToDesktop standard library is updated

What support do you offer?

We'll do our best to help you with any issue you encounter with ToDesktop for the duration of your subscription over email and chat.

On the Startup plan most queries are dealt with the same day or the next day.

On the Business plan you get concierge onboarding (a video/phone onboarding session where we take you through the product and make sure you're happy set up) as well as priority support where your issues are answered first and you can also schedule a phone/video support session if necessary.

You can email us at support@todesktop.com or chat with us using the Intercom bubble on the bottom right.

Can I send notifications to my users?

You can send notifications to your users with the HTML5 Notifications API.

We intercept the notification and send out a native notification to your user instead.

If this all sounds like gobbledygook, talk to your developer or else reach out to us and we'll help however we can.

Does ToDesktop work with sites built with ___?

  • Wordpress? Yes.
  • Squarespace? Yup.
  • Wix? Of course.
  • Shopify? Definitely.
  • React? You bet.
  • Vue? Affirmative.
  • PHP? 100%.
  • Go? Absolutely.

If you're noticing a trend here, that's because ToDesktop works with sites built with any technology stack.

If it works in your browser it will work as a ToDesktop app.

How do I add custom HTML/CSS/Javascript to my desktop app?

We do two things to help you identify that your site or web app is running as a desktop app. Firstly, we put a todesktop class name on the html element of all pages. So if you wanted to change the colour of your sidebar when running as a desktop app then you could do something like this:

html.todesktop .sidebar {
    background: blue;
  }

Secondly, we add a todesktop variable to javascript window object. This means that you could do something like this:

if (window.todesktop) {
  alert('You are running your web app as a desktop app');
}

If you want to import a javascript module to your desktop app only then we could take advantage of javascript modules and do something like this:

<script type="module">
  if (window.todesktop) {
    import('some-module.mjs');
  }
</script>

Further to this, we can also find out some other information about our desktop app:

if (window.todesktop) {
  console.log(window.todesktop.os.platform);
  // ^ Same as os.platform() in node: e.g. 'win32'

  console.log(window.todesktop.os.release);
  // ^ Same as os.release() in node: e.g.. '16.7.0'

  console.log(window.todesktop.version);
  // ^ The current version of ToDesktop: e.g.. '1.0'
}

Do you collect or store data about my customers?

No. An app built with ToDesktop will contact the ToDesktop servers to check for an update on application startup. However, no user data is collected or stored.

I want to use ToDesktop to convert multiple web apps, is there a bulk discount available?

Yes, let us know your needs. Send us an email at support@todesktop.com.

Can I try ToDesktop without buying?

Yes. There is a 14 day trial when you sign up. Just cancel (it takes two clicks) within 14 days of sign-up and your credit card will never be charged.

What features are on the product roadmap?

Take a look at our roadmap here! If you have any suggestions, we'd love to hear! Please email us at hi@todesktop.com.

Will my app work offline?

Think of ToDesktop as a normal browser that is just for your website. Your website will work exactly as it does in Chrome, or any other browser.

If you want to make the app work offline you'll need to make it into a progressive web app with a web manifest, service workers and client-side storage.

Learn more on MDN.

How does my app open links to other sites?

Your app will open external links in the user's default browser i.e. Chrome, Safari, Firefox, etc.

By Default, internal links are URLs on the same second-level domain as your web app. For example if your app is at https://www.foo.com, then https://app.foo.com and https://accounts.foo.com/bar is considered an internal URL but https://www.bar.com is considered external.

With ToDesktop, you can customize this behavior if needed. For example, if your site uses social logins (also known as OAuth) which redirect the user to another site, e.g. Facebook, you will need to configure your app to treat these as internal links to stop them from opening in the default browser.

Read the question below for info on how to do this.

How does the app differentiate between internal and external links?

When creating or editing your app you can add a regex (short for regular expression) of urls that you wish to consider as internal. Look for this in the App Options panel.

Your regex should look something like this example regex.

This is definitely a bit technical so if you have any issues please send us an email to support@todesktop.com and we'll help you out.