Evil Martians
banner
evilmartians.com
Evil Martians
@evilmartians.com
The go-to agency for early-stage developer tools startups
Reposted by Evil Martians
5️⃣ Denis Lifanov from @evilmartians.com published an article on migrating 750GB of data from PostgreSQL to PlanetScale MySQL for @WhopIO with zero downtime, maintaining feature development throughout.
November 4, 2025 at 4:45 PM
Reposted by Evil Martians
Huge thanks to the @evilmartians.com team and @inazarova.bsky.social in particular for organizing the SF Ruby Conf.
Kudos to the sponsors: Chime, @bolt.new, Cisco, gusto, @temporal.io, @scoutmonitoring.bsky.social, @planetargon.com, @hackclub.com, @gitbutler.com, and others.
sfruby.com.
October 29, 2025 at 9:02 PM
We analyzed 300+ startups founded in 2024 and thousands of @github.com repositories to learn why @react.dev maintains dominance. Should your startup follow the crowd or go a different route?

evilmartians.com/chronicles/w...
Why startups choose React (and when you shouldn't)—Martian Chronicles, Evil Martians’ team blog
React dominates with 88.6% of startup funding, but 85% of these projects are dead. We analyze funding patterns, GitHub activity, and ecosystem health across React, Vue, Angular, and Svelte.
evilmartians.com
October 29, 2025 at 3:43 PM
New blog post! Whop powers thousands of creators and communities. When big influencers (millions of subscribers) brought their communities, real-time features—chat, notifications, feeds—it pushed Postgres to the edge. The DB was the bottleneck killing Whop’s scaling efforts.
October 28, 2025 at 3:44 PM
Reposted by Evil Martians
Come join me at SF Ruby, I think the program looks great!
October 22, 2025 at 7:42 PM
Today is the last day to grab a GA ticket for SF Ruby! Read our new blog post for a preview: evilmartians.com/chronicles/w...
Why we're excited about the SF Ruby conference—Martian Chronicles, Evil Martians’ team blog
SF Ruby and Evil Martians are excited to invite you to our premier event: the San Francisco Ruby Conference.
evilmartians.com
October 22, 2025 at 7:13 PM
Reposted by Evil Martians
Heading back to SF next month for sfruby.com.

@planetargon.com is sponsoring, and I’m hoping to meet teams giving their software a second act.

Thanks to @inazarova.bsky.social and the @evilmartians.com crew for the Cloud Card of me.

Tickets and details → sfruby.com
October 22, 2025 at 1:44 AM
Reposted by Evil Martians
Made a new PostCSS plugin for generating more realistic smooth shadows like on smoothshadows.com

Now designers usually rely on generators, but the resulting code is often hard to maintain.

github.com/postcss/post...
October 18, 2025 at 2:20 PM
Reposted by Evil Martians
An excellent guide to creating a search function on a website using @astro.build and @svelte.dev.

Thanks to this guide by Evil Martians, we have implemented a search on the ESLint Perfectionist website. It will be released soon. 🚀
October 15, 2025 at 5:35 PM
Agentic traces contain perfect info about agent behavior with every plan, action, and retry. But it’s lost in a sea of JSON.

So we built AgentPrism: open source React components that turn traces into visual diagrams for debugging agents. Plug in OpenTelemetry data and see your agent’s process.
October 15, 2025 at 2:58 PM
Your snappy statically generated @astro.build site deserves a search that likewise feels instant. Here’s how to get build-time indexing and client-side search that’s fuzzy, performant, and accessible. evilmartians.com/chronicles/h...
How to add fast, client-side search to Astro static sites—Martian Chronicles, Evil Martians’ team blog
Join me on a breathtaking journey as we add a client-side search to an SSG docs-first site, built with Astro!
evilmartians.com
October 8, 2025 at 8:00 PM
The Martian summer was not to be missed: open source, blogs, podcasts, talks, meetups, and getting ready for SFRuby, Nov 19-20. Read this one and catch up. evilmartians.com/chronicles/m...
Martian Summer: blog, talks, open source, and ready for SFRuby in Nov—Martian Chronicles, Evil Martians’ team blog
Open source, talks around the world and prepping SFRuby for Nov 2025. Catch up Evil Martians' blog, open source, podcast, and get ready as we head for SFRuby Conference in San Francisco.
evilmartians.com
October 7, 2025 at 7:42 PM
Reposted by Evil Martians
🚨 Free Font of the Month 🚨

Martian Grotesk by @evilmartians.com

Ideal for use on the web, the typeface’s vertical metrics guarantee equal space above and below text, enabling text labels to be positioned evenly on buttons.

↳ Download link (at the bottom of the page): buff.ly/vcWXjg0
October 2, 2025 at 6:00 PM
Use Vite & TypeScript to build a true API-first repository command center. Get a dedicated contract-first documentation workflow, keep contracts the single source of truth, cut bottlenecks & give your team a fast, reliable way from design→implementation. evilmartians.com/chronicles/c...
Contract shock therapy: the way to API-first documentation bliss—Martian Chronicles, Evil Martians’ team blog
Learn how to build a dedicated API documentation repository that becomes your team's single source of truth, enabling true contract-first development.
evilmartians.com
October 1, 2025 at 1:33 PM
Why is accurately detecting the Safari/iOS versions you’re dealing with key for modern web dev? Find the answers + our tips on painlessly identifying Safari/iOS versions in this new post! evilmartians.com/chronicles/h...
How to detect Safari and iOS versions with ease in 2025—Martian Chronicles, Evil Martians’ team blog
Read how to accurately detect Safari and iOS versions using WebKit feature checks, behavioral tests, and selective UA hints to gate features safely and avoid breaking UX.
evilmartians.com
September 30, 2025 at 2:20 PM
The best funnel builder on the planet, ClickFunnels is one of the largest Rails monoliths. Together, we fixed a problem that isn't always a priority, but which has productivity costs that can be an annoying drain if allowed to multiply: flaky tests. evilmartians.com/chronicles/f...
Flaky tests, be gone: long-lasting relief for chronic CI retry irritation!—Martian Chronicles, Evil Martians’ team blog
Flaky tests got you down? The Evil Martians formula stops chronic CI retry irritation! Clinically proven on ClickFunnels' massive test suite and dozens of developers!
evilmartians.com
September 23, 2025 at 2:31 PM
Reposted by Evil Martians
Thank you, @euruko.org 2025 and beautiful Viana do Castelo for the fantastic event, execution and energy of the Ruby community! From so many @evilmartians.com 💙
September 21, 2025 at 3:14 PM
Reposted by Evil Martians
Every large enough Rails app has extracted some services for performance and scalability reasons. You can do this without losing the joy of building with Ruby and Rails. Keep the recipes in Ruby, and only upgrade the "dumb" (unaware) kitchen tools. Here's how.
September 15, 2025 at 6:59 PM
Scaling Rails doesn't have to mean rewrites or microservices. Read this new post to see how and why to keep your business logic in Ruby, while firing up your kitchen with Go, C, and Rust! evilmartians.com/chronicles/b...
Baking with Rails at scale: recipes in Ruby, cookware from Go, C, and Rust—Martian Chronicles, Evil Martians’ team blog
Scale your Rails app without rewrites. Learn to keep business logic in Ruby and delegate heavy work to specialized tools, built with Go, C, and Rust, for performance and scalability.
evilmartians.com
September 15, 2025 at 4:50 PM
Reposted by Evil Martians
‼️ Friends, please pay attention:
grep -r "const _0x112" node_modules
if you found it, don't panic: update dependency
remove npm cache
⚠️critical CVE in set of popular NPM packages: socket.dev/blog/npm-aut.... They contain malware that injects code & replaces transaction addresses; user wallet funds redirect to attacker-controlled addresses! check malicious versions in projects’ node_modules: “grep -r "const _0x112" node_modules”
npm Author Qix Compromised via Phishing Email in Major Suppl...
npm author Qix’s account was compromised, with malicious versions of popular packages like chalk-template, color-convert, and strip-ansi published.
socket.dev
September 8, 2025 at 9:33 PM
⚠️critical CVE in set of popular NPM packages: socket.dev/blog/npm-aut.... They contain malware that injects code & replaces transaction addresses; user wallet funds redirect to attacker-controlled addresses! check malicious versions in projects’ node_modules: “grep -r "const _0x112" node_modules”
npm Author Qix Compromised via Phishing Email in Major Suppl...
npm author Qix’s account was compromised, with malicious versions of popular packages like chalk-template, color-convert, and strip-ansi published.
socket.dev
September 8, 2025 at 9:22 PM
Reposted by Evil Martians
12 years of PostCSS → 400M+ downloads/month. Lessons from the journey: collaborate early with other maintainers, keep libraries build-free for easier debugging, and focus on simplicity.
Great read on OSS longevity 🌟 #OpenSource
evilmartians.com/chronicles/w...
What we learned from creating PostCSS—Martian Chronicles, Evil Martians’ team blog
We share what have we learned creating PostCSS and the huge ecosystem around it. Get 8 key lessons from Andrey Sitnik, creator of PostCSS.
evilmartians.com
September 6, 2025 at 6:37 PM
Evil Martians cut Whop’s CI time in half in one week. This post walks through profiling to find hidden loggers, taming factory overhead, switching to smarter parallelization, and fixing the flaky tests that surfaced along the way. evilmartians.com/chronicles/t...
The Whop chop: how we cut a Rails test suite and CI time in half—Martian Chronicles, Evil Martians’ team blog
Evil Martians cut Whop’s Rails test suite and CI time in half using profiling, factory optimizations, and parallelization. Learn how we speed up tests and boost reliability.
evilmartians.com
September 3, 2025 at 5:59 PM
Reposted by Evil Martians
⚡️ Irina Nazarova (@evilmartians.com): Cutting CI Build Time in Half for Whop
⚡️ Sergey Karayev (Superconductor ): Getting the Most out of AI Coding Agents for Your Rails App

Grab it here: youtu.be/IMAABWxnbUM
August 28, 2025 at 4:30 AM
New post on adding Luau support for JetBrains IDEs! Covers how to balance PSI and LSP approaches + hurdles and gotchas to watch when adding a language to @jetbrains.com IDEs. evilmartians.com/chronicles/t...
The scenic route: lessons building an IntelliJ IDEA plugin for Luau—Martian Chronicles, Evil Martians’ team blog
This post covers the complex (but rewarding) process of building native language support for JetBrains from scratch. From crafting lexers and parsers to wrestling with soft keywords, PSI trees, and er...
evilmartians.com
August 27, 2025 at 2:13 PM