 OK, good stuff. I've managed to do a bit of coding as well today, which is always handy because towards the back end of this week, I'm actually speaking at a conference. So I've kind of got to get a move on and get some stuff done. So mostly what I've been doing is kind of setting up a little bit more infrastructure, just making sure that kind of everything's all set. And I've got hopefully a really solid foundation that I don't need to change too much on the way through. Mainly what I did is I don't know if I mentioned it before. But basically what I had was I was serving up the static files, and I did all the hashing stuff, which was cool. But everything else, the kind of non-static, was always going to the same index HTML. So what I've done is I've just updated that little bit of code now, where I match against everything that kind of came after Dev Summit. And then I'm looking for that particular thing in the sections. So for example, location.html. So if you go to Dev Summit slash location, you're going to get location.html, which extends the base HTML in the template here, which basically has a header, a block for the content, which is actually then filled out by that, by the actual section, and then the footer. All fine. That's working just as I'd hoped. So that's one thing that's definitely changed in here. Oh yeah, a lot of changes in the build file. I've got a lot of scripts. I wanted to avoid, this time, doing a full-on gulp grunt whatever build system. I thought most of the time, I'm actually not doing anything overly exciting. I want to use SAS, because I know I want to probably make all my sizes based off a baseline. So it's an 8-pixel baseline grid. And then off the top of that, I figure, well, if I've got a few variables or whatever, SAS is probably going to be the right thing. But I'm still going to keep it fairly minimal. Here, though, I've got an inline CSS and a linked CSS. And this is something I'm trying out. This may not work, and it may work, and I really don't know. So bear with me, I suppose. Right, what I'm doing, let's see if I can explain this quickly, let's see. So I have, notionally, inline CSS and linked CSS. So in the page, for example, there's going to be, it is in the header, there is the inline styles. So this is the kind of, I want to get a fast first render, and I want some inline styles. So what goes into the inline styles? Basically, I have a couple of standard kind of importy, including things. And then I've got specific styles at the moment just for the header. And my theory on the inlining styles is that I want basically things like dimensions and color. And that's it, as in if it's like a white block or a green block, that's the thing I want to reserve. That's all I care about. And pretty much everything else will probably be like font, clothes, or whatever. But no kind of background images or any of that, that can come in later. This is like reserving the space for content. And I know the height of the header. I know the height of the masked head. I should be able to do all of that stuff without actually doing anything else. In the background, that's all that inlining stuff is in one place. And I'm separating out my header into a full and an inline. And the inline is just basically like the baseline with the background and the box. This is just sort of placeholder while I was just testing the theory. And then the full one is like, it takes the inline, but then it adds the stuff on. And I've been in two minds as to whether I duplicate the inline stuff here because that CSS is going to exist. But I have a feeling that later on it's going to be useful to have something with the full styles in it. And I can't quite put my finger on why, just yeah, I think it might be because of the, to do with the hot swapping of sections. So anyway, so I've got the inline styles. And then in the, let's see, in the scripts, I have a, yeah, I've got this where I load styles. And basically, I load the styles. And you can see it's the same kind of hashing system that I used previously for this JavaScript. That's still going to work. This is going through the templating system. It'll convert this to a cds.whatever.css. And in the load styles, I basically do an XHR. And then when I load it, I know it's in the HTTP cache. And it should have the, whatever I gave it, like a one year caching time on it. Then I can inject an actual style sheet into the head with that URL. It'll make the request, which will be satisfied from the HTTP cache, and we should be good to go. So that is what happened. Just to show you, the inline stuff for the header doesn't have, say, a color, but the full one has Rebecca Purple as the thing. And you can see, actually, maybe I'll change it to red, which won't work because I don't have it built. So I can actually do npm run build. I could do a watch that would actually, oh, it failed. Of course it failed. Well done, me. Terrific. Oh, good. Yeah, it's because I didn't. OK. Oh, get commit. Changes. Just as well, this isn't the, oh, oh, yeah, that's fine. OK. Just as well, I didn't actually, see, I might change that because that was annoying. Right. There you go. It goes red now anyway, and the version's been bumped. And so by default, we have the, I don't want that. I have the inline styles like so, which has been squished and compressed and everything else. And then there's the link rail style sheet, which actually has all the other stuff. And so that you can see that the actual color is set to red. There you go, inherited from, but it's still there. So there you go. That's kind of what I'm currently doing, giving that a whirl, seeing how that goes. The next step is to actually start for real styling based on those, the mocks, and actually start flushing it out, which I will be building. While I designed desktop first, I actually build mobile first. And I have in my head the mocks or roughly what's going to happen, but I am definitely going to be winging some of it as I figure out exactly how this should all go. So there you go. Good days, bad days, every day's interesting when you're building in it. So there you go. Thanks for coming along on the journey, as always. And don't forget to subscribe. They make me say it. They don't make me say it. I want you to subscribe because I know there's loads of stuff, really interesting stuff on the channel, so yeah. You can find me on the Twitter if you want to check out at Aero Twist. And of course, you can leave comments below as well. Catch you probably in the next entry.