npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

mbake

v8.5.4

Published

mbake CLI is open source and extensible low-code productivity bundler/builder that leverages Pug and JAMstack.

Downloads

77

Readme

MetaBake

'All my friends KNOW the low-coder'

mbake CLI is open source and extensible low-code productivity bundler/builder that leverages Pug and JAMstack.

Overview

MetaBake(mbake) provides a bundler/builder for a developer to write cleaner code quicker, with pug and livereload out of the box.

You can gradually adopt it while it allows you to develop quicker - and with clean simplicity - Static Websites, Custom Elements, custom CMS/E-Commerce, CRUD and all sorts of dynamic Web Apps.

Please star our main project here:

  • https://github.com/INTUITION-dev/INTU

Prerequisites

You should know HTML, CSS and JavaScript - that is all we use. If you need to catch up, we recommend this book: 'Design and Build Websites' by Jon Duckett.

Quick start

   npm i -g mbake
   mbake -w . /* for a base website */
   cd website
   mbake -w . /* to run the watcher livereload */

INTUITION in 4 Minutes

Building sites take a few moments, just add index.pug and dat.yaml files in the folder, and compile it with mbake . from the root folder of your site.

Example

Create a folder called 'one'. In the folder 'one', create file index.pug


header
body
   p Hello #{key1}

and create file dat.yaml

key1: World

Note: to create a new page|screen in mbake, create a new folder with an index.pug and day.yaml in each folder.

Now make with mbake:

mbake .

This will create index.html. Of course you can use regular Pug syntax to include other Pug files or Markdown. (INTUITION Markdown flavor includes CSS support):

body
   div
      include:metaMD comment.md

And example Markdown file with CSS nested classes. Title is nested in 2 levels, .column class CSS and second level .stick CSS class

:::: column col-2
::: stick
Title 
:::
::::

So if you write a Markdown file comment.md, it will be included in index.html

Watcher

This will start a webserver and auto-refresh browser, and watch for file changes to auto build:

mbakeX -w .

Instead of . you can specify any path. Also, the fact that we are generating this static content allows us to have the entire Web App served by a CDN

SASS

CSS can be hard to work with, so people use Sass/Scss. Create a style.scss file:

$font-stack: Helvetica, sans-serif;
$primary-color: #333;

body {
   font: 100% $font-stack;
   color: $primary-color;
}

Create file style.yaml in assets folder, to compile your scss to css

css:
- style.scss

and run

mbake -s .

It will create a css file in assets/css with auto-prefixes.

So the structure of asset folder should look something like that:

assets/
   css/style.css /* this is going to be compiled from style.scss */
   scss/style.scss /* your working area */
   style.yaml /* with `scss` files that need to be compiled */
	...

TypeScript

TypeScript is supper-set of JavaScript. Write a ts file, like foo.ts:

foo(i:number) {
	console.log('oh hi')
}

and run

mbake -t .

Lots of time you use .ts to call DB services: such as Google FireStore.

Examples - Website

There are 12 very different examples included in the mbake CLI. One is just a website:

mbake -w

That will extract an example website in the current folder. ( Obviously you can create any layout with any combination of css and other libraries, but here is how we laid out an example/starter website).

mbake -f .

This emits a Pug file that you should include in your Pug's layout head section. In turn, the included file calls a mbToolBelt.js from a CDN.

Apps

While you can build websites: you can also build full webapps, eg. CRUD.

Other examples include:

  • Using markdown CSS effect: allows non-programmers to write interactive stories
  • Slide show with markdown
  • Dashboard example
  • Ads example

Links

Advanced Front End w/ Pug

mbake CLI Docs

Git Repo

Pug example

INTUITION.DEV Home Page