Skip to content
Switch branches/tags


Failed to load latest commit information.
Latest commit message
Commit time

Welcome! This project is STILL A WORK IN PROGRESS and not yet production ready - but I appreciate you trying this out and giving feedback!

Babel-Blade ⛸️

babel-blade is the collective name for the babel plugin/macro that helps to generate graphql query strings inline and solves the double declaration problem.

Check our new Docs site or view my 7 minute talk at React Boston for an explainer!

babel blade walkthrough on youtube

Seriously check out our 👉 our new Docs site 👈

Have you heard that we have a new Docs site? It's in Docusaurus and it's great!

Obligatory Social Proof

"This is gonna be huge! Colocated graphql queries to the extreme, Completely autogenerated from your code. Super great dev experience & maintainable to the max. 🤗 Use with whatever graphql client framework you want. 🎉 "

"Just took a look at babel-blade. Oh man, does that reverse engineer your gql queries from your usages?????? 👏👏👏"

"Fucking great"

Ken Wheeler, probably

"Super duper"

For developers of plugins/contributors


This monorepo was bootstrapped from babel-plugin-macro-boilerplate. Check it out if you want to make one!

if you spot something that could be a better practice, PLEASE open an issue or tell me I'm wrong!

For contributors/swyx

Guide to this repository

This is a monorepo managed by lerna. Let's go through the folder structure:

  • /docs: source markdown files for our Docusaurus docs
  • /website: the rest of the files (React, Site config, etc) for our Docusaurus docs
  • /packages/babel.macro: a very small/insignificant wrapper of babel-plugin-blade for hooking into babel-plugin-macros. Published as blade.macro.
  • /packages/babel-plugin-blade: the core of this repo, the secret sauce. Published as babel-plugin-blade. It has a separate README, go in there if interested to learn more about its inner workings. If you are just looking to use babel-plugin-blade you can just check out our new Docs site.

publishing check list

  1. npm run build on packages/babel-plugin-blade
  2. lerna publish


(under new management!) ⛸️Solve the Double Declaration problem with inline GraphQL. Babel plugin/macro that works with any GraphQL client!




No packages published

Contributors 4