This is the code I'm writing in public as I build the website to host my new course format.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
zedshaw 4d586b1f67 Merge branch '20200324-model-modules' of zedshaw/learnjsthehardway into master 1 天之前
db Implemented JSON, RSS, and Atom feeds. 1 天之前
designs Fix up the landing page by just using SVG. 4 週之前
lib Implemented JSON, RSS, and Atom feeds. 1 天之前
migrations User needs unique on email. 1 周之前
notes Notes on the rational and design of the build system for my future self. 2 天之前
protected/media These are currently samples being generated by the build tool, but soon they will be moved into a private repo. 2 天之前
sass A bit of spacing and such for the design. 3 週之前
services Small fix to the email templates before deploy. 2 週之前
src Implemented JSON, RSS, and Atom feeds. 1 天之前
static Implemented JSON, RSS, and Atom feeds. 1 天之前
tests Reworking the tests so they do a forced shutdown of knex pools. 1 天之前
tools Useful little scripts for dealing with postgres's terrible connection management. 1 天之前
.gitattributes Trying to fix line endings automatically. 2 週之前
.gitignore An absolute bunch of trash but it works. I now have to figure out how to rip out gulp and just write a better generator. 1 周之前
LICENSE Mostly copy the bulma-templates over to work with. 2 月之前
Makefile Easier to use vim when you have a Makefile. 1 月之前 An absolute bunch of trash but it works. I now have to figure out how to rip out gulp and just write a better generator. 1 周之前
ecosystem.config.js Ohhhh, I accidentally told redis to reboot. WAT. 1 月之前
generator.js Implemented JSON, RSS, and Atom feeds. 1 天之前
gulpfile.js More slimming the gulpfile. 2 天之前
jest.config.js Make sure same-origin credentials are used in all fetch, then a test to confirm one api will block. 4 週之前
knexfile.js Basic structure of the modules part of the system, but no real data in it yet. 1 周之前
package-lock.json Implemented JSON, RSS, and Atom feeds. 1 天之前
package.json Implemented JSON, RSS, and Atom feeds. 1 天之前
rollup.config.js Got the first SCSS and Pug integration going, now rewriting all the things. 1 月之前

Learn JavaScript The Hard Way

This is the project you can follow from the live streams as I develop the website for the course. I initially started this using the awesome Bulma Templates at and will place the code after each live session here.


Thu Feb 6 10:58:22 EST 2020

Managed to get the CORS worked out with mailtrain.  Wow CORS is garbage.
Ditched cors and mailtrain widget.  No point really.

Sun Feb 9 09:58:20 EST 2020

Setup initial Sapper configuration to start working on the site for real.

Tue Feb 11 06:00:02 EST 2020

Sapper is working good.
Configured a monochromne bulma theme.
Got testing to work with jest and puppeteer.

Wed Feb 12 07:15:02 EST 2020

Figured out session work sort of in sapper, but I need to go through the RealWorld code to confirm.
I can setup a cookie-session, and that is attached to req.session.
Then I add a {session:} to the sapper middleware that sets this based on the req.session.views setting.
Kind of convoluted so I suspect I'll find out more in the RealWorld app, but it does work.
I also need to review the reactive $ variables in svelte because I forgot about that.

Mon Feb 17 12:32:58 EST 2020

I have a basic auth working off rethinkdb and kue, but I....don't know how to set it in a session?
Rethink has some bad design decisions so I most likely will jump off it soon.
Got the logins working.  Sessions weren't saving because I set response/status before setting the session.

Tue Feb 18 07:21:16 EST 2020

Adding in PM2 and testing and locking this down tight before working on the UI more.
Removed RethinkDB and went back to ArangoDB.  I like it, but it's also just easy to manage.

Wed Feb 19 21:15:22 EST 2020

Found out to reconcile the commonjs vs. es6 modules.  I'll eventually have to move that out.
Added pino logging and got the web logs coming through.  It's very busy though.
Got a full test case for the one UI I have working, and it runs automatically.

Sat Feb 22 13:40:30 EST 2020

Cleaned up the design and slimmed it down significantly using Spectre.css.
Got logins mostly working, tested, and added registration.
Took the blogging example from Sapper and modified it slightly.  Needs more.

Mon Feb 24 11:32:09 EST 2020

Managed to clean up the design, code, and many other things, then get logins/registration mostly working.
Imported the Spectre.css directly into this project so I can rapidly work on modifying it.

Wed Mar 4 16:37:50 EST 2020

Quite a lot of the design is refined and the development process is much smoother.
Close to throwing it on the internet and seeing how it goes.

Important Docs

These are links to docs I constantly have to look up: