如何制作也可以在本地运行的 Web 应用程序?

How do I make a web app that also works locally?

我正在考虑构建一个网络应用程序来帮助人们分析他们的投资。用户会上传他们的共同基金报表,该工具会对其进行分析并给出一些结论。

由于投资数据很敏感,有些用户会犹豫是否将其上传到未知网站,因此最好为这些用户提供一个选项,让他们下载应用程序并 运行 在本地。

如何在不构建两个应用程序的情况下支持此功能?如果我用 JS 编写所有代码并避免任何服务器端代码怎么办?然后我可以提供下载压缩 HTML/CSS/JS 文件的下载按钮。用户可以解压,双击index.html即可使用。我可以使用“文件打开”对话框和 file API 阅读共同基金声明,而无需将其上传到服务器。

这行得通吗?还有其他方法可以实现这一目标吗?它们各自的优缺点是什么?

要求:

  1. 用户应该能够将其用作网络应用程序而无需安装任何东西。
  2. 对隐私敏感的用户应该能够将应用程序下载到他们的硬盘并 运行 在本地,而不会将任何数据传输到服务器。
  3. 如果需要,我们可以限制 Chrome 在 Windows 和 OS X 上的支持,放弃其他浏览器、其他 OS、平板电脑和手机。这只是一个业余爱好周末项目,甚至没有人会使用它。
  4. 我没有时间构建两个应用程序,一个是 Web 应用程序,另一个用于本地下载和安装。

调查 http://electron.atom.io/

您仍将制作 2 个应用,但它们将共享 99% 的相同代码。