From a3437c4a5295a5ce78496edf45a3a9d1f6712b0a Mon Sep 17 00:00:00 2001 From: Sergey Aleksandrov Date: Tue, 19 Jan 2021 09:46:40 +0200 Subject: [PATCH] update --- README.md | 7 ++++--- assets/article-logo.png | Bin 0 -> 24322 bytes assets/schema.png | Bin 0 -> 58852 bytes package.json | 2 +- packages/babel-plugin/README.md | 5 +++-- packages/babel-plugin/package.json | 2 +- packages/core/README.md | 5 +++-- packages/core/package.json | 2 +- 8 files changed, 13 insertions(+), 10 deletions(-) create mode 100644 assets/article-logo.png create mode 100644 assets/schema.png diff --git a/README.md b/README.md index 062713d..f62d66d 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ iSSR

-The easiest way to move your React application to Server Side Rendering. +The easiest way to move your React application to Server-Side Rendering. Handles Side Effects and synchronizes State. ## Table of Contents @@ -16,7 +16,8 @@ The easiest way to move your React application to Server Side Rendering. - [License](#the-mit-license) ## Articles -Coming soon... +[RU: Server-Side Rendering с нуля до профи](https://habr.com/ru/post/527310/) +[ENG: Server-Side Rendering from zero to hero](https://dev.to/alexsergey/server-side-rendering-from-zero-to-hero-2610) ## Features @@ -35,7 +36,7 @@ Modern JS applications are divided into 2 types: Schematically, the SSR application looks like this: -![iSSR](https://www.rockpack.io/readme_assets/rockpack_ussr_1.png) +![iSSR](http://natrube.net/issr/schema.png) - SSR application consists of two sub-applications - frontend and backend with common logic. - NodeJS app runs React app. diff --git a/assets/article-logo.png b/assets/article-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..2010fd4828131ee8cfa08b2232cb7dba755f02b1 GIT binary patch literal 24322 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 Hz(4*6YM&ML literal 0 HcmV?d00001 diff --git a/assets/schema.png b/assets/schema.png new file mode 100644 index 0000000000000000000000000000000000000000..5fbb94df4867df3e2c419c53d67a2d817d3fd542 GIT binary patch literal 58852 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

-The easiest way to move your React application to Server Side Rendering. +The easiest way to move your React application to Server-Side Rendering. Handles Side Effects and synchronizes State. [README](https://github.com/AlexSergey/issr) ## Articles -Coming soon... +[RU: Server-Side Rendering с нуля до профи](https://habr.com/ru/post/527310/) +[ENG: Server-Side Rendering from zero to hero](https://dev.to/alexsergey/server-side-rendering-from-zero-to-hero-2610) ## Features - TypeScript support diff --git a/packages/babel-plugin/package.json b/packages/babel-plugin/package.json index 1a405f5..0d32d5b 100644 --- a/packages/babel-plugin/package.json +++ b/packages/babel-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@issr/babel-plugin", - "version": "1.0.0", + "version": "1.0.1", "description": "Babel plugin for iSSR", "main": "index.js", "scripts": { diff --git a/packages/core/README.md b/packages/core/README.md index a30dc90..13e28a8 100644 --- a/packages/core/README.md +++ b/packages/core/README.md @@ -2,12 +2,13 @@ iSSR

-The easiest way to move your React application to Server Side Rendering. +The easiest way to move your React application to Server-Side Rendering. Handles Side Effects and synchronizes State. [README](https://github.com/AlexSergey/issr) ## Articles -Coming soon... +[RU: Server-Side Rendering с нуля до профи](https://habr.com/ru/post/527310/) +[ENG: Server-Side Rendering from zero to hero](https://dev.to/alexsergey/server-side-rendering-from-zero-to-hero-2610) ## Features - TypeScript support diff --git a/packages/core/package.json b/packages/core/package.json index 713d696..6499c63 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@issr/core", - "version": "1.0.0", + "version": "1.0.1", "description": "iSSR the easiest way to move your React application to Server Side Rendering", "main": "dist/index.js", "types": "dist/index.d.ts",