Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bharathvaj-ganesan/picart
A handy image editor application powered by electron.
https://github.com/bharathvaj-ganesan/picart
camanjs electron electron-app image-editor javascript nodejs picart
Last synced: 3 months ago
JSON representation
A handy image editor application powered by electron.
- Host: GitHub
- URL: https://github.com/bharathvaj-ganesan/picart
- Owner: bharathvaj-ganesan
- License: apache-2.0
- Created: 2018-09-14T07:16:28.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-02-03T12:34:46.000Z (about 2 years ago)
- Last Synced: 2024-05-27T17:13:00.847Z (9 months ago)
- Topics: camanjs, electron, electron-app, image-editor, javascript, nodejs, picart
- Language: JavaScript
- Homepage:
- Size: 7.17 MB
- Stars: 21
- Watchers: 1
- Forks: 3
- Open Issues: 34
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
A handy image editor powered by electron.
![]()
![]()
![]()
## Run
Start the app in the `dev` environment. This starts the renderer process in [**hot-module-replacement**](https://webpack.js.org/guides/hmr-react/) mode and starts a webpack dev server that sends hot updates to the renderer process:
```bash
$ yarn dev
```Alternatively, you can run the renderer and main processes separately. This way, you can restart one process without waiting for the other. Run these two commands **simultaneously** in different console tabs:
```bash
$ yarn start-renderer-dev
$ yarn start-main-dev
```If you don't need autofocus when your files was changed, then run `dev` with env `START_MINIMIZED=true`:
```bash
$ START_MINIMIZED=true yarn dev
```## Packaging
To package apps for the local platform:
```bash
$ yarn package
```To package apps for all platforms:
First, refer to [Multi Platform Build](https://www.electron.build/multi-platform-build) for dependencies.
Then,
```bash
$ yarn package-all
```To package apps with options:
```bash
$ yarn package -- --[option]
```:bulb: You can debug your production build with devtools by simply setting the `DEBUG_PROD` env variable:
```bash
DEBUG_PROD=true yarn package
```⚠️ Please read the following section before installing any dependencies ⚠️
### Module Structure
This app uses a [two package.json structure](https://github.com/electron-userland/electron-builder/wiki/Two-package.json-Structure). This means, you will have two `package.json` files.
1. `./package.json` in the root of your project
1. `./app/package.json` inside `app` folder### Which `package.json` file to use
**Rule of thumb** is: all modules go into `./package.json` except native modules, or modules with native dependencies or peer dependencies. Native modules, or packages with native dependencies should go into `./app/package.json`.
1. If the module is native to a platform (like node-postgres), it should be listed under `dependencies` in `./app/package.json`
2. If a module is `import`ed by another module, include it in `dependencies` in `./package.json`. See [this ESLint rule](https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/no-extraneous-dependencies.md). Examples of such modules are `material-ui`, `redux-form`, and `moment`.
3. Otherwise, modules used for building, testing and debugging should be included in `devDependencies` in `./package.json`.
Apache License 2.0 © [Bharathvaj Ganesan](https://bharathvajganesan.me)