GitHunt
OP

openpeeps/madam

Madam ๐Ÿ’‹ A lightweight local web server for Design Prototyping ๐ŸŽจ and Front-end Development ๐ŸŒˆ WIP


Madam ๐Ÿ’‹ A lightweight local web server for Design Prototyping โ€ข Front-end Development ๐ŸŒˆ
Pew pew pew! ZWIFF! Boom!

๐Ÿ‘‹ Madam Welcome Screen is sooo POP! ๐Ÿ™€ Madam - Welcome screen

๐Ÿ˜ Key Features

  • Compiled, Fast, Low memory foot-print ๐Ÿƒ
  • < 1MB file size binary app
  • < 3MB RAM usage in Welcome Screen ๐Ÿฅณ
  • Install once, run anytime, as many servers you need ๐Ÿ‘Œ
  • No code required
  • Serve Static Assets ๐Ÿ“ฆ
  • Configuration via madam.yml
  • Static HTML Website Generator
  • Routes Management via madam.routes.yml
  • Supports all HTTP verbs, GET, POST, HEAD, etc.
  • Madam Skins / Template Engine via Tim for layout, view, partials
  • Made for Design Prototyping and Front-end Development
  • Works on Linux and OS X
  • Open Source under MIT license
  • Pew pew pew! ZWIFF! ๐Ÿ’‹

Why ?

Because NodeJS environment sucks and there are no other lightweight / easy to setup alternatives.

๐Ÿฅณ Best for

Prototyping. Showcase. JavaScript, HTML, CSS projects, libraries or packages. Also best for testers and designers. Pew pew again!

๐Ÿ’… Installing

Madam is currently available for OS X and Linux distributions only. You can compile Madam by yourself, or get the latest version from GitHub releases.

Setup Madam to your PATH and do the do ๐Ÿค“ Better said, do the blue! ๐Ÿ˜Ž

ln -s ~/path/to/your/madam /usr/local/bin

โœจ Madam Commands

Madam ๐Ÿ’‹ A Lightweight & Fast Local Web Server for
Design Prototyping ๐ŸŽจ and Front-end Development ๐ŸŒˆ
๐Ÿ‘‰ Info, updates and bugs: https://github.com/openpeeps/madam

Usage:
   init                           Create a new Madam configuration file from CLI
   run [--verbose]                Run local server. Use verbose flag for tracking requests
   build                          Build current project to Static HTML Website

Options:
  -h --help                       Show this screen.
  -v --version                    Show Madam version.

Developing with Madam

Run madam init in your project directory and setup your madam.yml via command line wizard.

Here you can find a beautiful madam.yml configuration that covers all Madam features.

name: "Awesome Madam"
path: "./example"                   # path to your root HTML project
port: 1230                          # optional | default 1010

# Paths for layouts, views or partials
# These paths are prepended with project path provided above
# For example, layouts will point to "./example/layouts"
templates:
    layouts: "layouts"              # directory path for layouts
    views: "views"                  # directory path for views
    partials: "partials"            # directory path for partials


routes:
    get:
        about: "about.html"
        products/my-product: "product.html"
        publish: "publish.html"

# Define your custom Middlewares
middlewares:
    auth: "@login.session"      # a fake auth middleware

# Setup Static Assets to serve any kind of static files via Madam
assets:
    source: "./dist/assets/*"        # Path on disk for indexing the static assets
    public: "/assets"                # Public route for accessing the static assets

# Customize console output
console:
    logger: true                    # Enable http request logger
    clear: true                     # Clear previous console output on request

Madam Skins

The way you can stay DRY. Madam brings layouts, views and partials logic to your project.

On hold, Madam depends on ๐Ÿ‘‰ Tim Template Engine (WIP)

Create the first page

todo

Roadmap

0.1.0

  • Create logo
  • Embedding Httpbeast
  • Routes Handler
  • Static Assets Handler
  • init command
  • run command with --verbose flag
  • build command
  • Multi-threading while generating project to Static HTML
  • Templating via Tim Engine supporting layouts, views, partials
  • GitHub Workflow Action for Cross Compilation and Release
  • Talk about it on ycombinator / stackoverflow / producthunt

0.2.0

0.3.0

  • Madam GUI

๐ŸŽฉ License

Madam | MIT license. Made by Humans from OpenPeeps.

Copyright ยฉ 2023 OpenPeeps & Contributors โ€” All rights reserved.