This has been an awesome week for CloseBrace development! I've been very happy with the progress I've made on my various milestones so far, but there's nothing quite like really digging in and building a website. I've been working with HTML since before CSS was a thing (I designed and built my first website in 1996, which—holy crap!—was twenty years ago), and I still love getting in there, putting down tags, and then prettying them up and watching the site come together.
As mentioned in this week's Tuesday update, I'm using flexbox for layout, which has worked beautifully. The site has four breakpoints and should look good on any device with which you'd like to peruse it. Unless that device is a seven year-old PC running IE 8, in which case you might want to upgrade if you're trying to become a web developer!
With the design established and working, it was time to turn to getting KeystoneJS up and running. The way Keystone works is, you flesh out your own data models, and it creates a back-end for managing them. This means you're on your own for front-end views, though it does put some basic structure in place for you. As a result, the first thing I did was create a model for posts (Keystone auto-creates a User model, so authentication is already handled). Once I had a basic post model laid out, I then had to create views that both show the post, and show an index of existing posts, sorted by type. For example, the tutorials index would only show posts of type "tutorial" while the articles index would only show posts of type "article".
I've accomplished all of this and a bunch more (including a lot of reading on how to get Keystone to get certain things I want it to do in the background), and have a really solid site skeleton up and running on which I'll be able to build and improve. Right now, locally, I can access the site, hit the tutorials index, see a table of posts, click any of those posts, and see it. All of this is actually functioning, with data coming from the back-end, not placeholder stuff. I'm very pleased with how far the site has come in just one week. Here's a screenshot of the tutorials index!
Other cool things: the site uses the Cloudinary CDN for image storage and manipulation, and that's already wired in to Keystone. It currently features no Bootstrap or jQuery, and I don't intend on adding either, cutting way down on site weight. I've got nothing against either of those techs, but if you don't need 'em, why use 'em?
Next week: more CloseBrace coding, specifically, it's time to get a home page built and wired up. I'll also be investigating ad providers with the goal of finding one that uses as little tracking as possible (preferably none). It's a short week, as I have to travel on Friday, so expect updates on Tuesday and Thursday. See you then!