From dace054bb4e21888dcc3d0d5151db5f889935762 Mon Sep 17 00:00:00 2001 From: Eric Clemmons Date: Sun, 10 Mar 2019 16:19:35 -0700 Subject: [PATCH 1/3] Fix 500-example name --- examples/500/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/500/package.json b/examples/500/package.json index 40aa095..7a222f4 100644 --- a/examples/500/package.json +++ b/examples/500/package.json @@ -1,6 +1,6 @@ { "private": true, - "name": "404-example", + "name": "500-example", "version": "0.0.0", "scripts": { "dev": "polydev", From 0375beb76a46fde649ba96df4d020a568a86731f Mon Sep 17 00:00:00 2001 From: Eric Clemmons Date: Sun, 10 Mar 2019 16:28:00 -0700 Subject: [PATCH 2/3] Add parcel example --- .gitignore | 1 + examples/parcel/.gitignore | 2 ++ examples/parcel/package.json | 16 +++++++++++++ examples/parcel/routes/index.js | 4 ++++ examples/parcel/src/ParcelExample.js | 36 ++++++++++++++++++++++++++++ examples/parcel/src/index.html | 8 +++++++ examples/parcel/src/index.js | 5 ++++ 7 files changed, 72 insertions(+) create mode 100644 examples/parcel/.gitignore create mode 100644 examples/parcel/package.json create mode 100644 examples/parcel/routes/index.js create mode 100644 examples/parcel/src/ParcelExample.js create mode 100644 examples/parcel/src/index.html create mode 100644 examples/parcel/src/index.js diff --git a/.gitignore b/.gitignore index b5dfec2..c5c65c8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ .next +*.log examples/**/*.lock dist node_modules diff --git a/examples/parcel/.gitignore b/examples/parcel/.gitignore new file mode 100644 index 0000000..4849e0a --- /dev/null +++ b/examples/parcel/.gitignore @@ -0,0 +1,2 @@ +.cache +public diff --git a/examples/parcel/package.json b/examples/parcel/package.json new file mode 100644 index 0000000..18208b9 --- /dev/null +++ b/examples/parcel/package.json @@ -0,0 +1,16 @@ +{ + "private": true, + "name": "parcel-example", + "version": "0.0.0", + "scripts": { + "dev": "polydev", + "start": "NODE_ENV=production polydev" + }, + "devDependencies": { + "parcel-bundler": "^1.12.0" + }, + "dependencies": { + "react": "^16.8.4", + "react-dom": "^16.8.4" + } +} diff --git a/examples/parcel/routes/index.js b/examples/parcel/routes/index.js new file mode 100644 index 0000000..5265b44 --- /dev/null +++ b/examples/parcel/routes/index.js @@ -0,0 +1,4 @@ +const Bundler = require("parcel-bundler") +const bundler = new Bundler("./src/index.html", { outDir: "./public" }) + +module.exports = bundler.middleware() diff --git a/examples/parcel/src/ParcelExample.js b/examples/parcel/src/ParcelExample.js new file mode 100644 index 0000000..d6e8449 --- /dev/null +++ b/examples/parcel/src/ParcelExample.js @@ -0,0 +1,36 @@ +import React, { Fragment, useState } from "react" + +export function ParcelExample() { + const [taps, setTaps] = useState(1) + + return ( + + + + +
+ +
+
+

+ 👋 Howdy from Parcel +

+ +

+ {taps} {taps ? "taps" : "tap"} +

+

+ +

+
+ + +
+ + ) +} diff --git a/examples/parcel/src/index.html b/examples/parcel/src/index.html new file mode 100644 index 0000000..ed33b6b --- /dev/null +++ b/examples/parcel/src/index.html @@ -0,0 +1,8 @@ + + + +
+ + + + diff --git a/examples/parcel/src/index.js b/examples/parcel/src/index.js new file mode 100644 index 0000000..0f948e6 --- /dev/null +++ b/examples/parcel/src/index.js @@ -0,0 +1,5 @@ +import React from "react" +import { render } from "react-dom" +import { ParcelExample } from "./ParcelExample" + +render(, document.getElementById("root")) From 60f4a97d74f4647610732d8ff7e4f8e659411374 Mon Sep 17 00:00:00 2001 From: Eric Clemmons Date: Sun, 10 Mar 2019 16:28:10 -0700 Subject: [PATCH 3/3] Fix yarn start using shelljs --- scripts/start.js | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/scripts/start.js b/scripts/start.js index c7a8f56..71cdd82 100755 --- a/scripts/start.js +++ b/scripts/start.js @@ -1,17 +1,26 @@ #!/usr/bin/env node -const shell = require("shelljs") +const { execSync } = require("child_process") +const fs = require("fs") +const path = require("path") const [, , example] = process.argv - -shell.cd("examples") +const examplesDir = path.resolve(__dirname, "../examples") if (!example) { - const examples = shell.ls("-d", "*").map((file) => file) + const examples = fs + .readdirSync(examplesDir, "utf8") + .filter((folder) => + fs.statSync(path.resolve(examplesDir, folder)).isDirectory() + ) throw new Error(`$ yarn example ${examples}`) } -shell.cd(example) -shell.exec("yarn install --production") -shell.exec("yarn start") +const options = { + cwd: path.resolve(examplesDir, example), + stdio: "inherit" +} + +execSync("yarn install", options) +execSync("yarn start", options)