From 66e4ebc250083a70c86e17946a89172d1968d93e Mon Sep 17 00:00:00 2001 From: MapleLeaf <19603573+itsMapleLeaf@users.noreply.github.com> Date: Fri, 31 Dec 2021 10:51:06 -0600 Subject: [PATCH] simple vite react ssr setup --- package.json | 3 + packages/docs-new/package.json | 22 ++ packages/docs-new/src/counter.tsx | 11 + packages/docs-new/src/entry.client.tsx | 5 + packages/docs-new/src/entry.server.tsx | 6 + packages/docs-new/src/root.tsx | 21 ++ packages/docs-new/src/server.tsx | 35 ++ packages/docs-new/tsconfig.json | 3 + pnpm-lock.yaml | 445 +++++++------------------ 9 files changed, 223 insertions(+), 328 deletions(-) create mode 100644 packages/docs-new/package.json create mode 100644 packages/docs-new/src/counter.tsx create mode 100644 packages/docs-new/src/entry.client.tsx create mode 100644 packages/docs-new/src/entry.server.tsx create mode 100644 packages/docs-new/src/root.tsx create mode 100644 packages/docs-new/src/server.tsx create mode 100644 packages/docs-new/tsconfig.json diff --git a/package.json b/package.json index 862f26a..ab2b6de 100644 --- a/package.json +++ b/package.json @@ -19,5 +19,8 @@ "eslint-plugin-unicorn": "^39.0.0", "prettier": "^2.5.1", "typescript": "^4.5.4" + }, + "resolutions": { + "esbuild": "latest" } } diff --git a/packages/docs-new/package.json b/packages/docs-new/package.json new file mode 100644 index 0000000..0cf3f8f --- /dev/null +++ b/packages/docs-new/package.json @@ -0,0 +1,22 @@ +{ + "name": "reacord-docs-new", + "type": "module", + "private": true, + "scripts": { + "dev": "esmo src/server.tsx" + }, + "dependencies": { + "express": "^4.17.2" + }, + "devDependencies": { + "@types/express": "^4.17.13", + "@types/node": "*", + "@types/react": "^17.0.38", + "@types/react-dom": "^17.0.9", + "esno": "^0.13.0", + "react": "^17.0.2", + "react-dom": "^17.0.2", + "typescript": "^4.5.4", + "vite": "^2.7.10" + } +} diff --git a/packages/docs-new/src/counter.tsx b/packages/docs-new/src/counter.tsx new file mode 100644 index 0000000..57245ba --- /dev/null +++ b/packages/docs-new/src/counter.tsx @@ -0,0 +1,11 @@ +import * as React from "react" + +export function Counter() { + const [count, setCount] = React.useState(0) + return ( +
+

You clicked {count} times!

+ +
+ ) +} diff --git a/packages/docs-new/src/entry.client.tsx b/packages/docs-new/src/entry.client.tsx new file mode 100644 index 0000000..e17263b --- /dev/null +++ b/packages/docs-new/src/entry.client.tsx @@ -0,0 +1,5 @@ +import * as React from "react" +import { render } from "react-dom" +import { Root } from "./root" + +render(, document) diff --git a/packages/docs-new/src/entry.server.tsx b/packages/docs-new/src/entry.server.tsx new file mode 100644 index 0000000..fff1f09 --- /dev/null +++ b/packages/docs-new/src/entry.server.tsx @@ -0,0 +1,6 @@ +import * as React from "react" +import { Root } from "./root" + +export async function render(url: string) { + return +} diff --git a/packages/docs-new/src/root.tsx b/packages/docs-new/src/root.tsx new file mode 100644 index 0000000..a111273 --- /dev/null +++ b/packages/docs-new/src/root.tsx @@ -0,0 +1,21 @@ +import React from "react" +import { Counter } from "./counter" + +export function Root() { + return ( + + + + + + + Reacord +