airbnb / airbnb/react-sketchapp

Support for Linux

Open
#465 16 comments 0 reactions 0 assignees View on GitHub
enhancement help wanted technical
Dominant language
TypeScript
Stars
14.9k
Forks
797
PR merge metrics
No merged PRs in 30d

Description

**Background:**
I am a React full stack dev currently working with Grommet UI and would really like to use React Sketchapp for UI/UX. However, I do not have access to an OS X system. Most users are on Windows, OS X and Linux (in that order) but Linux and OS X are less than 10% of all computer users. Windows is closer to 90% but as developers most of us use Linux. Personally I work in Linux for almost everything including desktop and server. I would expect any Node.js based app to be able to run seamlessly across Windows, OS X and Linux the same.

| -------------------------------------------------------------------------------------------------
| **Requesting a new feature**
| -------------------------------------------------------------------------------------------------

**Proposal/Feature-request:**
I would like to request a feature to have the ability to run React Sketch.app on Linux. I feel that most developers will then have access to either OS X and or at least Linux like myself. If not possible with Node directly, I would like to propose an Electron based version.

| -------------------------------------------------------------------------------------------------
| **Reporting a bug or issue (not really a bug, but more of a feature request)**
| -------------------------------------------------------------------------------------------------

**Expected behavior:**
Is to run on Linux following ```npm install``` and then ```npm run render```

**Observed behavior:**
```
git clone https://github.com/airbnb/react-sketchapp.git
```
```
cd react-sketchapp/examples/basic-setup && npm install
```
**Works with no issues as expected**
```
nrydevops@cloudshell:~/react-sketchapp (nrydevops)$ npm run render
npm ERR! missing script: render

npm ERR! A complete log of this run can be found in:
npm ERR! /home/nrydevops/.npm/_logs/2019-12-30T21_17_51_020Z-debug.log
```
additional logging:
```
0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'run', 'render' ]
2 info using npm@6.13.4
3 info using node@v12.14.0
4 verbose stack Error: missing script: render
4 verbose stack at run (/usr/lib/node_modules/npm/lib/run-script.js:155:19)
4 verbose stack at /usr/lib/node_modules/npm/lib/run-script.js:63:5
4 verbose stack at /usr/lib/node_modules/npm/node_modules/read-package-json/read-json.js:116:5
4 verbose stack at /usr/lib/node_modules/npm/node_modules/read-package-json/read-json.js:436:5
4 verbose stack at checkBinReferences_ (/usr/lib/node_modules/npm/node_modules/read-package-json/read-json.js:391:45)
4 verbose stack at final (/usr/lib/node_modules/npm/node_modules/read-package-json/read-json.js:434:3)
4 verbose stack at then (/usr/lib/node_modules/npm/node_modules/read-package-json/read-json.js:161:5)
4 verbose stack at /usr/lib/node_modules/npm/node_modules/read-package-json/read-json.js:382:12
4 verbose stack at /usr/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:115:16
4 verbose stack at FSReqCallback.readFileAfterClose [as oncomplete] (internal/fs/read_file_context.js:61:3)
5 verbose cwd /home/nrydevops/react-sketchapp
6 verbose Linux 4.19.72+
7 verbose argv "/usr/bin/node" "/usr/bin/npm" "run" "render"
8 verbose node v12.14.0
9 verbose npm v6.13.4
10 error missing script: render
11 verbose exit [ 1, true ]
```

**Sketch version:**
latest as of December 30, 2019

Contributor guide

Open the contributing guide

Research direction

Start in examples/basic-setup and run npm install, then compare the expected npm run render command with the reported missing-script error on Linux. Done means the project has a defined, working Linux path for the requested rendering workflow, with its setup and platform requirements documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
electron, linux, node.js, react, typescript
Domain
desktop, operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.