{
  "$type": "site.standard.document",
  "createdAt": "2022-06-03T12:30:00+01:00",
  "description": "I've run through the basic Remix tutorial, and I wasn't wowed. Still, it's good to see a team trying to solve a new type of problem, so I'm going to keep an eye on it.",
  "path": "/stream/remix-first-impressions",
  "publishedAt": "2022-06-03T12:30:00+01:00",
  "site": "at://did:plc:swxoj3wjlwodcqs5ipmvgnug/site.standard.publication/3mnv7gbn3czno",
  "tags": [
    "Web",
    "Code"
  ],
  "textContent": "Just finished working through the most basic of basic Remix tutorials: the blog. Remix is building hype so I wanted to give it at least a cursory look so that I can hold forth with Opinions when next I'm prompted for opinions on modern JavaScript frameworks. It happens all the time. And: Remix feels nice! It feels like the closest thing to a JavaScript Rails/Laravel that I've tried so far (disclaimer: I haven't tried BlitzJS). I like the first-class support for databases, the emphasis on testing in the examples, and the friendly attitude towards web standards: win win win all round. I'm not quite sure about the loader/action APIs for pages. As I understand it, the ActionFunction exported from a route file is a generic handler for POST requests to that route—but it doesn't have the explicit clarity of e.g. SvelteKit, where the handlers are called get/post/patch/etc and all live in an \"endpoint\" file that handles requests. I'm generally a fan of colocating code that all works together, but I like keeping templating separate from logic, and SvelteKit does a better job on that front. That's just personal preference, though. Beyond developer ergonomics, though—it feels like Remix is trying to edge in on MVC app territory, and I don't think that any amount of effort is going to be able to chase down Rails or Laravel. JavaScript frameworks do best when they keep concerns separate and stake out a bit of territory to absolutely dominate—see for instance NextJS, which provides serverside-flavoured logic only insofar as it calls some other data-handling API, but which has become the go-to recommendation for building reliable and performant frontends. Remix is officially on the tech tool carousel, so I'm keen to see where it goes in future. But I don't think I'm going to reach for it when scoping out new projects.",
  "title": "Remix first impressions",
  "updatedAt": "2022-06-03T13:08:33+01:00"
}