Skip to content

Blog

Why I'm Building Qik

I'm a fan of monorepos. I like to avoid overly complex infrastructure. However, the consequences can oftentimes be painfully slow CI and a poor developer experience.

For example, huge Django projects can have seconds of latency to run a command, not to mention minutes of running migrations in CI just to start your test suite. Oh, you have a failing test? Have fun literally re-running everything from scratch on the next commit.

Although tools like nx have greatly benefitted JavaScript monorepos, I desired a tool like make for large Python projects that could:

  • Understand the import graph, running only the things that matter.
  • Support multiple virtual environments and enforce import boundaries.
  • Use full file hashing to understand what's changed vs. file modification times.

Enter qik (quick).