standardnotes-app/packages/desktop
StandardNotes CI 8b7b70eae7
chore(release): publish
- @standardnotes/desktop@3.22.7-alpha.4
2022-06-17 16:34:19 +00:00
..
app chore(workflow): desktop version 2022-06-17 11:32:36 -05:00
build feat: add desktop repo (#1071) 2022-06-07 11:52:15 -05:00
jsign chore: windows signing 2022-06-13 16:28:50 -05:00
scripts fix(desktop): use top level package json for versioning 2022-06-17 11:10:42 -05:00
test refactor: add icons package (#1078) 2022-06-09 14:55:00 -05:00
.env.public.development fix(desktop): commit public env config 2022-06-16 13:38:48 -05:00
.env.public.production fix(desktop): commit public env config 2022-06-16 13:38:48 -05:00
.eslintrc fix: desktop (#1080) 2022-06-09 18:01:00 -05:00
.gitignore fix(desktop): commit public env config 2022-06-16 13:38:48 -05:00
.mocharc.json feat: add desktop repo (#1071) 2022-06-07 11:52:15 -05:00
.npmrc feat: add desktop repo (#1071) 2022-06-07 11:52:15 -05:00
.prettierignore feat(wip): components monorepo (#1082) 2022-06-10 10:15:44 -05:00
babel.config.js fix: icons package 2022-06-09 22:38:38 -05:00
CHANGELOG.md chore(release): publish 2022-06-17 16:34:19 +00:00
desktop.webpack.common.js fix(desktop): commit public env config 2022-06-16 13:38:48 -05:00
desktop.webpack.dev.js refactor: add icons package (#1078) 2022-06-09 14:55:00 -05:00
desktop.webpack.prod.js refactor: add icons package (#1078) 2022-06-09 14:55:00 -05:00
dev-app-update.yml feat: add desktop repo (#1071) 2022-06-07 11:52:15 -05:00
LICENSE feat: add desktop repo (#1071) 2022-06-07 11:52:15 -05:00
linter.tsconfig.json feat: add desktop repo (#1071) 2022-06-07 11:52:15 -05:00
package.json chore(release): publish 2022-06-17 16:34:19 +00:00
README.md chore: add inner desktop as workspace so version gets bumped automatically 2022-06-15 20:55:05 -05:00
SECURITY.md feat: add desktop repo (#1071) 2022-06-07 11:52:15 -05:00
tsconfig.json feat: add desktop repo (#1071) 2022-06-07 11:52:15 -05:00

Standard Notes

Slack Twitter Follow

This application makes use of the core JS/CSS/HTML code found in the web repo. For issues related to the actual app experience, please post issues in the web repo.

Running Locally

Make sure Yarn is installed on your system.

yarn install
yarn build:web # Or `yarn dev:web`
yarn dev

# In another terminal
yarn start

We use commitlint to validate commit messages. Before making a pull request, make sure to check the output of the following commands:

yarn lint
yarn test # Make sure to start `yarn dev` before running the tests, and quit any running Standard Notes applications so they don't conflict.

Pull requests should target the develop branch.

Installing dependencies

To determine where to install a dependency:

  • If it is only required for building, install it in package.json's devDependencies
  • If it is required at runtime but can be packaged by webpack, install it in package.json's dependencies.
  • If it must be distributed as a node module (not packaged by webpack), install it in app/package.json's dependencies
    • Also make sure to declare it as an external commonjs dependency in webpack.common.js.

Building

Build for all platforms:

  • yarn release

Building natively on arm64

Building arm64 releases on amd64 systems is only possible with AppImage, Debian and universal "dir" targets.

Building arm64 releases natively on arm64 systems requires some additional preparation:

  • export npm_config_target_arch=arm64
  • export npm_config_arch=arm64

A native fpm installation is needed for Debian builds. fpm needs to be available in $PATH, which can be achieved by running

  • gem install fpm --no-document

and making sure $GEM_HOME/bin is added to $PATH.

Snap releases also require a working snapcraft / snapd installation.

Building can then be done by running:

  • yarn install

Followed by

  • node scripts/build.mjs deb-arm64

Installation

On Linux, download the latest AppImage from the Releases page, and give it executable permission:

chmod u+x standard-notes*.AppImage