{"id":21195611,"url":"https://github.com/openpeeps/madam","last_synced_at":"2026-02-25T17:34:37.506Z","repository":{"id":168757705,"uuid":"454314244","full_name":"openpeeps/madam","owner":"openpeeps","description":"Madam 💋 A lightweight local web server for Design Prototyping 🎨 and Front-end Development 🌈 WIP","archived":false,"fork":false,"pushed_at":"2023-06-03T20:27:43.000Z","size":1147,"stargazers_count":28,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-14T04:37:17.710Z","etag":null,"topics":["cli-server","designer","dev-server","development-environment","development-tools","front-end","front-end-development","hacktoberfest","madam-server","nim-lang","webserver"],"latest_commit_sha":null,"homepage":"","language":"Nim","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openpeeps.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-01T08:40:46.000Z","updated_at":"2025-05-11T21:21:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"e5365614-c38b-4e4f-a6b6-f148b15420a4","html_url":"https://github.com/openpeeps/madam","commit_stats":null,"previous_names":["openpeeps/madam"],"tags_count":0,"template":false,"template_full_name":"openpeeps/pistachio","purl":"pkg:github/openpeeps/madam","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openpeeps%2Fmadam","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openpeeps%2Fmadam/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openpeeps%2Fmadam/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openpeeps%2Fmadam/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openpeeps","download_url":"https://codeload.github.com/openpeeps/madam/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openpeeps%2Fmadam/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29832966,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-25T17:17:09.781Z","status":"ssl_error","status_checked_at":"2026-02-25T17:16:50.421Z","response_time":61,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli-server","designer","dev-server","development-environment","development-tools","front-end","front-end-development","hacktoberfest","madam-server","nim-lang","webserver"],"created_at":"2024-11-20T19:29:07.929Z","updated_at":"2026-02-25T17:34:37.466Z","avatar_url":"https://github.com/openpeeps.png","language":"Nim","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://github.com/openpeeps/madam/raw/main/.github/madam.png\" width=\"140px\"\u003e\u003cbr\u003e\u003cstrong\u003eMadam 💋 A lightweight local web server for Design Prototyping • Front-end Development 🌈\u003c/strong\u003e\u003cbr\u003ePew pew pew! ZWIFF! Boom!\u003cbr\u003e\n    \u003cimg src=\"https://github.com/openpeeps/madam/raw/main/.github/carbon.png\" width=\"603px\"\u003e\n\u003c/p\u003e\n\n\u003cdetails\u003e\n    \u003csummary align=\"center\"\u003e👋 Madam Welcome Screen is sooo POP! 🙀\u003c/summary\u003e\n    \u003cimg src=\"https://github.com/openpeeps/madam/raw/main/.github/welcomescreen.png\" width=\"1200px\" alt=\"Madam - Welcome screen\"/\u003e\n\u003c/details\u003e\n\n## 😍 Key Features\n- [x] Compiled, Fast, Low memory foot-print 🍃\n- [x] \u003c 1MB file size binary app\n- [x] \u003c 3MB RAM usage in Welcome Screen 🥳\n- [x] Install once, run anytime, as many servers you need 👌\n- [x] No code required\n- [x] Serve Static Assets 📦\n- [x] Configuration via `madam.yml`\n- [ ] Static HTML Website Generator\n- [x] Routes Management via `madam.routes.yml`\n- [ ] Supports all HTTP verbs, `GET`, `POST`, `HEAD`, etc.\n- [ ] Madam Skins / [Template Engine via Tim](https://github.com/openpeeps/tim) for `layout`, `view`, `partials`\n- [x] Made for **Design Prototyping** and **Front-end Development**\n- [x] Works on **Linux** and **OS X**\n- [x] Open Source under `MIT` license\n- [x] Pew pew pew! ZWIFF! 💋\n\n## Why ?\nBecause NodeJS environment sucks and there are no other lightweight / easy to setup alternatives.\n\n## 🥳 Best for\nPrototyping. Showcase. JavaScript, HTML, CSS projects, libraries or packages. Also best for testers and designers. Pew pew again!\n\n## 💅 Installing\nMadam is currently available for **OS X** and **Linux distributions** only. You can compile Madam by yourself, or get the latest version from [GitHub releases](https://github.com/openpeeps/madam/releases).\n\nSetup Madam to your `PATH` and do the do 🤓 Better said, do the blue! 😎\n```zsh\nln -s ~/path/to/your/madam /usr/local/bin\n```\n\n## ✨ Madam Commands\n```zsh\nMadam 💋 A Lightweight \u0026 Fast Local Web Server for\nDesign Prototyping 🎨 and Front-end Development 🌈\n👉 Info, updates and bugs: https://github.com/openpeeps/madam\n\nUsage:\n   init                           Create a new Madam configuration file from CLI\n   run [--verbose]                Run local server. Use verbose flag for tracking requests\n   build                          Build current project to Static HTML Website\n\nOptions:\n  -h --help                       Show this screen.\n  -v --version                    Show Madam version.\n```\n\n## Developing with Madam\nRun `madam init` in your project directory and setup your `madam.yml` via command line wizard.\n\nHere you can find a beautiful `madam.yml` configuration that covers all Madam features.\n\n```yaml\nname: \"Awesome Madam\"\npath: \"./example\"                   # path to your root HTML project\nport: 1230                          # optional | default 1010\n\n# Paths for layouts, views or partials\n# These paths are prepended with project path provided above\n# For example, layouts will point to \"./example/layouts\"\ntemplates:\n    layouts: \"layouts\"              # directory path for layouts\n    views: \"views\"                  # directory path for views\n    partials: \"partials\"            # directory path for partials\n\n\nroutes:\n    get:\n        about: \"about.html\"\n        products/my-product: \"product.html\"\n        publish: \"publish.html\"\n\n# Define your custom Middlewares\nmiddlewares:\n    auth: \"@login.session\"      # a fake auth middleware\n\n# Setup Static Assets to serve any kind of static files via Madam\nassets:\n    source: \"./dist/assets/*\"        # Path on disk for indexing the static assets\n    public: \"/assets\"                # Public route for accessing the static assets\n\n# Customize console output\nconsole:\n    logger: true                    # Enable http request logger\n    clear: true                     # Clear previous console output on request\n```\n\n## Madam Skins\nThe way you can stay **DRY**. Madam brings `layouts`, `views` and `partials` logic to your project.\n\nOn hold, Madam depends on 👉 [Tim Template Engine](https://github.com/openpeeps/tim) (WIP)\n\n### Create the first page\n_todo_\n\n\n## Roadmap\n#### 0.1.0\n- [x] Create logo\n- [x] Embedding Httpbeast\n- [x] Routes Handler\n- [x] Static Assets Handler\n- [x] `init` command\n- [x] `run` command with `--verbose` flag\n- [ ] `build` command\n- [ ] Multi-threading while generating project to Static HTML\n- [ ] Templating via [Tim Engine](https://github.com/openpeeps/tim) supporting `layouts`, `views`, `partials`\n- [ ] GitHub Workflow Action for [Cross Compilation and Release](https://github.com/nim-lang/Nim/wiki/BuildServices#8-cross-compilation-and-release)\n- [ ] Talk about it on ycombinator / stackoverflow / producthunt \n\n#### 0.2.0\n- [ ] Fake content generator based on [Faker Nim library](https://github.com/jiro4989/faker)\n\n### 0.3.0\n- [ ] Madam GUI\n\n### 🎩 License\nMadam | `MIT` license. [Made by Humans from OpenPeeps](https://github.com/openpeeps).\u003cbr\u003e\nCopyright \u0026copy; 2023 OpenPeeps \u0026 Contributors \u0026mdash; All rights reserved.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenpeeps%2Fmadam","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenpeeps%2Fmadam","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenpeeps%2Fmadam/lists"}