Artem Zakharchenko
@kettanaito.com
Software engineer. Author of mswjs.io and @bytebinding.com. Teacher at http://EpicWeb.dev and egghead.io. Storyteller @zakarcher.com. My debut book "LOGGERHEADS" is out 👇 https://zakarcher.com/books/loggerheads
I am preparing an absolute treat of a landing page for @bytebinding.com. I've never built one for a product before. You can say libraries are somewhat products, but they don't have to be (and very few are positioned as such). This one let me go wild and I'm loving the results.
Looking for a weekend read? Check out my debut book: zakarcher.com/books/logger... It's short, atmospheric, and will not live you indifferent. I haven't had a single reader who was ready for that ending. #booksky 💙📚
Loggerheads - Zak Archer
zakarcher.com
A casual reminder that you likely don't need that subscription. Buy music. Buy movies. Buy hard drives. Buy software that's one-time purchase. Owning things goes a long way.
It is rather astonishing that one can graduate a university and don't know what types of potatoes there are or that not every maple sirup goes with pancakes.
Heartfelt thank you to the entire @vitest.dev for sponsoring my work on MSW and for championing better testing experiences on the web. You're a huge inspiration for me.
More and more developers are migrating to MSW 3.0. This is great to see. Meanwhile, I'm addressing reported issues to make sure you have the best mocking experience possible.
I am beyond thrilled to welcome @beehiiv.com as MSW partner! Their support makes sure I can keep working on better API mocking for everyone. Thank you ❤️
MSW 3.0 brings granular import paths to keep that module graph under control. While we're keeping the root "msw" exports as-is (apart from "graphql"), the recommended way to import things is from the designated import paths.
Integrating MSW into Vite-based projects has become silly simple with the new "msw/vite" plugin! And yes, this works with Vitest, too. The plugin integrates MSW client and server-side and keeps the worker script up-to-date for you, automatically.
In the latest version, @msw/serve expands its support to Express, Hono, and Fastify servers. Turn your mock handlers into actual server route handlers! Handy in limited situations. mswjs.io/ecosystem/s...
Introduction
Spawn an HTTP server from your request handlers.
mswjs.io
Realized I forgot to add the GraphQL subscriptions docs 🤦♂️ Injustice fixed. I present to you the beauty which is mocking GraphQL subscriptions: mswjs.io/docs/graphq...
Subscriptions
Intercepting GraphQL subscriptions.
mswjs.io
I see a lot of folks following me from the writing community. Hi! 👋 It's a pleasure to connect with you. I write fiction, working on the second draft of my fantasy story (at @zakarcher.com). Drop what you're working on below, too. I'd love to see.
Nobody will buy a $1,000 console not because it's $1,000. It's because it will ship with outdated hardware. People prove yearly they have more than enough disposable income on freaking phones. Everything is overpriced as it is, just give customers value for that price.
Why are we lamenting over closed PRs? Opening a PR was never the right first interaction with any project. Read issues, discuss, learn from the maintainers, *then* open a PR. And if you do all that, you'll already be a collaborator in most OSS projects I know of.
I've moved the docs for all the ecosystem packages under mswjs.io and refreshed their logos to be more aligned. Hopefully, this will help developers discover you can do much more with your API mocks!
Async History Stack is one of the most impressive tiny pieces of software I built for my upcoming app. Extremely powerful, tiny, and dependency-free way to compose actions into history entries with undo/redo/cancellation/etc. You should give it a try. github.com/kettanaito/...
GitHub - kettanaito/async-history-stack: Arbitrary change history management in JavaScript.
Arbitrary change history management in JavaScript. - kettanaito/async-history-stack
github.com
Hi @jasnell.me! I'd love to join the discussion around ServerRequest/ServerResponse (new network primitives for Node). What is the best place for me to do so?
Learning to gather the discipline to push through is the rite of passage to any creative endeavor. Getting off the inspiration drug and making things happen at any time, any mood.
I was prototyping HTTP2 support in MSW and came to yet another realization that we do need proper server-side network primitives. This might be the turning point for me implementing those. A Request that isn't married to REST. A Response that supports trailers. The good stuff.
It never ceases to amaze me how gullible people are. They tell you coding is solved and yet software is perpetually broken. Then, they tell you not to read the code because we all know the best way to deal with problems is to ignore them. And that's engineers.
Thank you so much for supporting my work on MSW, @fubits.dev ❤️ You're the best.
With MSW 3.0 released this week, I want to try something new to make the project financially sustainable. I wrote an open letter about the project, its history, and impact on the ecosystem. I ask for five minutes of your time to read it. Thank you. mswjs.io/sponsor
Sponsor
Support API mocking on the web by becoming a sponsor.
mswjs.io
For those lacking imagination, reality is the pinnacle of a dream.