Skip to content

stephencookdev/grandmas-own-jsx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Grandma's Own JSX πŸ‘΅

You no longer need to write JSX like all your boring colleagues.

Look over your shoulder, at your colleague's code. You see this:

import React from 'react';

const MyComponent = () => {
  return (
    <div className="container">
      <h1>A Boring Component</h1>
      <p>Readable syntax is for suckers.</p>
    </div>
  );
}

Now, chuckle to yourself. Revel in your superiority, as you look back at your own, equivalent code:

//πŸ‘΅πŸ“š
// 🎁 div className="container"
// 🎩 h1
// πŸ’– _ "A Lovely Component"
// πŸ‘• p
// πŸ‘΅ _ "Syntax just like in one of Grandma's old recipe book"

import React from 'react';

const MyComponent = () => {
  return "πŸ‘΅";/*
    🎁
      🎩
        πŸ’–
      πŸ‘•
        πŸ‘΅
  */
}

Demo

You can mess about with a demo here.

How Do I Use It?

Step 1

Install it:

npm install --save grandmas-own-jsx

Step 2

Add this to your .babelrc file:

"plugins": [
  "grandmas-own-jsx"
]

or, depending on your Babel version:

"plugins": [
  "module:grandmas-own-jsx"
]

Step 3

Consider your life choices.

Explain The Syntax?

At the start of your file, you declare a list of recipes. You use a 'πŸ‘΅πŸ“š' to signal you're starting the recipe book.

//πŸ‘΅πŸ“š
// πŸ₯° div className="foo" title="bar"  <--  the emoji is the key we will use, followed by the attributes assigned to it
// πŸ₯³ MyComponent className=foo  <--  we can also use variables and custom components

To then actually render those components, use a 'πŸ‘΅' to signal that we're about to reference Grandma's recipes.

Then, we show what the DOM structure should be, showing what is a child of what.

const MyApp = 'πŸ‘΅';/*
  πŸ₯°
    πŸ₯³
*/

Why The Whole 'Grandma' Thing?

I really liked the joke of "Grandma's Old Recipe Book", since there's a reference list at the top. As I started to write this README I realised it really wasn't that funny. Covid-19 is testing me.

Picture of the Grandma from Windwaker, making soup

About

JSX, just like Grandma used to make πŸ‘΅

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages