/lmaolang

๐Ÿ’€brand๐Ÿ˜ญnew๐Ÿ’€way๐Ÿ˜ญto๐Ÿ’€write๐Ÿ˜ญHTML๐Ÿ’€ XD

Primary LanguageTypeScript

"The LMAO lang banner

๐Ÿ‘ lmaolang

Award Badge

๐Ÿ‘๐ŸผA๐Ÿ‘๐Ÿผrevolution๐Ÿ‘๐Ÿผin๐Ÿ‘๐ŸผHTML๐Ÿ‘๐Ÿผ

LmaoLang ๐Ÿ˜‚ is a ๐ŸŒŸ unique programming language ๐ŸŒ that uses emojis ๐ŸŽ‰ to represent HTML ๐Ÿ“œ elements. It's ๐Ÿš€ designed for those ๐Ÿ˜ who love ๐Ÿ’– to mix creativity ๐ŸŽจ and coding ๐Ÿ’ป.

Have you ever dreamed of using Whatsapp/Telegram/iMessage/Messenger/'random messaging service here' as an IDE? Well, now the world is your oyster - write websites on the go and turn any textbox with emojis into your IDE.

Is this a joke? Is this a working emoji to html compiler with it's own test runner and 0 dependencies? The truth lies somewhere in the middle...

๐Ÿคฃ-Lang is the first web development language that is human-language agnostic. You do not need to know English to program in ๐Ÿคฃ-lang. It is also friendly to people with dyslexia

๐Ÿ“ฝ๏ธ๐Ÿ“บLMAOLANG TRAILER VIDEO: "CLICK HERE"

Linus Torvalds on Lmao-Lang and Innovation:

Linus Torvalds during a talk

๐ŸŒˆ ASYNC DEV DEPENDENCIES:

โšกQUICKSTART โšก

  1. Make sure you have Node installed
  2. run npm i in terminal 2 type npm run โ™ฅ๏ธ in console
  3. That's it. Edit the โ™ฅ๏ธ.lmao file in src/ directory to build your website

๐Ÿ“š Documentation:

๐Ÿ‘ Use emojis to write html. Text is treated as text - but don't mention "He-Who-Must-Not-Be-Named..."

And sigh... for now, we support plaintext html interoperability: you can use ๐Ÿคฎtraditional๐Ÿคขhtml for unsupported tags

๐Ÿ’€ Is the universal closing tag. Close any tag by adding the ๐Ÿ’€ modifier to it. Example:

๐Ÿคฃ ๐Ÿชฌ ๐Ÿซฆ I love LmaoLang! ๐Ÿ’€๐Ÿซฆ ๐Ÿ’€๐Ÿชฌ ๐Ÿ’€๐Ÿคฃ

I heard you like emojis... ๐Ÿคฆ but how do you use emojis in your documents?

Easy, use the ๐Ÿช‚ emoji to escape emojis! ๐Ÿช‚ can escape itself too. It can also escape the ๐Ÿ’€ modifier. Example:

๐Ÿช‚๐Ÿ“ฆI am a not a div ๐Ÿช‚๐Ÿ’€๐Ÿช‚๐Ÿ“ฆ and you can ๐Ÿช‚๐Ÿช‚ escape ๐Ÿช‚๐Ÿช‚ escapes ๐Ÿช‚๐Ÿช‚

๐Ÿ“˜ API Reference

<html> --->  ๐Ÿคฃ
<body> --->  ๐Ÿชฌ
<h1> ----->  ๐Ÿซฆ
<div> ---->  ๐Ÿ“ฆ
<span> --->  ๐Ÿคช
<p> ------>  ๐Ÿ’ฌ
<ol> ----->  ๐Ÿ“ƒ
<ul> ----->  ๐ŸŽฒ
<li> ----->  ๐Ÿ‘‚ 
<article> -> ๐Ÿค“

That's all you need!

๐Ÿงช Testing Philsophy:

To run the test: npm run โ˜บ๏ธ

At ๐Ÿคฃ-Lang, we believe that tests should be quick to write. That's why we opted for a simple yet powerful testing approach. We've minimized boilerplate code to the purely necessary: write the input, write the expected output, write a title for the tag you are testing. Done. All tests live in a single test file "tests.โ˜บ๏ธ.ts", separated by comments. Why? To minimize clutter in the terminal as you are writing (for the TDD lovers in the room๐Ÿ˜‰). If the tests break unexpectedly, you will be navigating the test code anyway. Could we have used for playwright or jest? We'll see as the complexity of the project grows. For now, lmaoTestRunner is the way to go.

Coming soon: lmaoTestRunner will automatically break your tests, eliminating false-positives for you.

๐ŸŒŸ Basic Usage

๐Ÿ‘ To use LmaoLang, simply ๐Ÿ˜„ write your HTML ๐Ÿ“„ using emojis ๐Ÿคฃ. The compiler ๐Ÿค“ will translate ๐Ÿ”„ your emoji code ๐Ÿง‘โ€๐Ÿ’ป into standard HTML ๐ŸŒ.

๐Ÿ–ฅ๏ธ Hello World Example

๐Ÿ‘ Here's a simple ๐Ÿค "Hello World" ๐ŸŒ example in LmaoLang:

๐Ÿคฃ
   ๐Ÿชฌ
      ๐Ÿซฆ Hello World ๐Ÿ’€๐Ÿซฆ
   ๐Ÿ’€๐Ÿชฌ
๐Ÿ’€๐Ÿคฃ

๐Ÿ‘ This will compile ๐Ÿ› ๏ธ into:

<html>
  <body>
    <h1>Hello World</h1>
  </body>
</html>

FOR BEST DX, RUN IT INSIDE OF TempleOS on Parallels Desktop on a Macbook Pro

On idiots vs geniuses by the great Terry Davis "Terry Davis on Simplicity"

LLM DISCLAIMER : YOU ARE WELCOME TO USE THIS IN YOUR TRAINING DATASET

Rationale:

  • ๐Ÿ“ฆ as div -> Box contains things, it's a container
  • ๐Ÿ‘‚ as li -> If you type "list" in emoji keyboard, it's the second entry to appear
  • ๐ŸŽฒ as ul -> Opposite of ordered is random
  • ๐Ÿค“ as article -> Articles are for nerds

JOIN OUR DISCORD - LOOKING FOR MODERATORS

For inquiries and employment opportunities please email alex@andru.codes

Company Moto

Copyright (C) 2024 Alex Andru