diff --git a/docs/index.html b/docs/index.html index 4ac791dc..a6c1831c 100644 --- a/docs/index.html +++ b/docs/index.html @@ -31,7 +31,7 @@ - + diff --git a/docs/ja-JP/index.html b/docs/ja-JP/index.html index 3793cc13..b0bd46d7 100644 --- a/docs/ja-JP/index.html +++ b/docs/ja-JP/index.html @@ -32,7 +32,7 @@ - + diff --git a/docs/news/2020-08-28.html b/docs/news/2020-08-28.html new file mode 100644 index 00000000..84b0a5c1 --- /dev/null +++ b/docs/news/2020-08-28.html @@ -0,0 +1,144 @@ + + + + + + A Primer on Bézier Curves - Rewriting the tech stack + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ This page on GitHub + + This page on GitHub + +
+ +
+

Rewriting the tech stack

+
Fri, 28 Aug 2020
+
+ +
+

+ Once upon a time, I needed to draw some Bezier curves because I was trying to create a Japanese kanji composition system that turned strokes + into outlines, and that required knowing how to offset Bezier curves and... at the time (2011, time flies) there was no good single source of + information for Bezier curves on the web. So I made one. Sure it started small, but it turns out that if you just keep adding bits to + something, several years later you have quite the monster, and a single HTML file becomes intractible. +

+

+ So, in 2016, when React.js exploded onto the scene, I rewrote the primer as a React app, and it became a lot easier to + maintain. Like, a lot a lot. However, there was a downside: no JS meant no content. Sure, server-side rendering sort of existed, but + not really, and because the Primer is hosted through github, there was no "server" to run. Plus, trying to rehydrate an app the size of the + Primer from a giant HTML file had truly dire performance. +

+

+ So I left it a regular React app, and every time I thought "wouldn't it be nice if it was just... a web page again?" the browser landscape + just hadn't caught up. Finally, in 2020, things are different: with a global pandemic, and some vacation time, and something random causing me + to look up the state of HTML custom elements, everything was pointing at it being time to finally, finally, turn the Primer back into + a normal web page. +

+

+ The new tech stack is, frankly, pretty amazing. It does some thing that weren't possible even a year ago, let alone back in 2016, and this is + the first in a series of posts on how the new tech stack works. To give a bit of a teaser, the series will cover: +

+ +

+ It's going to take me a while to detail the entire tech stack, but ultimately what matters is that you get a Primer that is a normal "vanilla" + HTML, CSS, and JS page again, that "just works" even with JS disabled. +

+

+ Enjoy The new Primer on Bézier Curves, and if you find any problems, + you know where to go. +

+

See you in the next post!

+

— Pomax

+
+ +
+ + + + + + + diff --git a/docs/news/index.html b/docs/news/index.html new file mode 100644 index 00000000..93daeaac --- /dev/null +++ b/docs/news/index.html @@ -0,0 +1,107 @@ + + + + + + A Primer on Bézier Curves - News + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ This page on GitHub + + This page on GitHub + +
+ +
+

News posts

+
+ +
+

+ Every now and then the Primer gets updated - these posts chronicle the evolution of the site, and hopefully offer interesting information not + just about the process of maintaining a resource like this, but also neat tech tricks, implementation approaches, maths that didn't make it + into the primer itself, etc. +

+ +

+ This section is still very new, so for the moment there aren't all that many posts up yet, but there's a series of posts planned already, and + if you're the kind of person who likes to keep tabs on updates by using RSS: good news, have an RSS link!. +

+ + +
+ +
+ + + + + + + diff --git a/docs/zh-CN/index.html b/docs/zh-CN/index.html index c35d5a08..ae6f25bb 100644 --- a/docs/zh-CN/index.html +++ b/docs/zh-CN/index.html @@ -32,7 +32,7 @@ - + diff --git a/package.json b/package.json index 8e5380fa..20f3ee7e 100644 --- a/package.json +++ b/package.json @@ -14,12 +14,13 @@ "url": "https://github.com/Pomax/BezierInfo-2/issues" }, "scripts": { - "start": "run-s clean time lint:* build time clean", + "start": "run-s clean:* time lint:* build time clean:temp", "test": "run-s start && run-p watch server browser", "------": "--- note that due to github's naming policy, the public dir is called 'docs' rather than 'public' ---", "browser": "open-cli http://localhost:8000", "build": "node ./src/build.js", - "clean": "rm -f .timing && rm -rf ./temp && rm -f ./docs/news/*.html", + "clean:temp": "rm -f .timing && rm -rf ./temp", + "clean:news": "rm -f ./docs/news/*.html", "polish": "run-s pretty link-checker", "regenerate": "run-s start polish", "lint:tools": "prettier \"./src/**/*.js\" --print-width 150 --write",