Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

hyoo_artist

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

hyoo_artist

**M**am owns language-**A**gnostic **M**odules. This is base **MAM** project.

  • 0.0.2
  • latest
  • npm
  • Socket score

Version published
Weekly downloads
2
increased by100%
Maintainers
1
Weekly downloads
 
Created
Source

MAM

Mam owns language-Agnostic Modules. This is base MAM project.

Articles

  • MAM: сборка фронтенда без боли
  • Step-by-step tutorial

Features

  • Agnostic modules. Module is directory with mixed source files (JS, TS, CSS, JSON, HTML, Tree, images etc).
  • Automatic dependency tracking. You don't need import/export - simply use namespaced names in accordance to directory structure, like $mol_button_major / $jin.time.moment in *.JAM.JS/*.TS or --mol_theme_back / [mol_page_title] / .my-header-avatar in *.CSS.
  • Development server with automatic bundling on request. Only if you use it then it will have bundled.
  • Build any module as standalone bundle. You can develope thousand of modules in one project.
  • Cordova project generation. Simply add config.xml to module and -cordova dir with cordova project will have generated.

Cloud usage

Gitpod Online Dev Workspace

Installation

Checkout this repo (~2s):

git clone https://github.com/hyoo-ru/mam.git ./mam && cd mam

Linux limits

$mol_build and typescript uses inotify by default on Linux to monitor directories for changes. It's not uncommon to encounter a system limit on the number of files you can monitor.

/etc/sysctl.d/20-watch.conf

fs.inotify.max_user_watches=524288
fs.file-max=500000

Development server

Install node modules and build dev server from actual sources

npm install

Start dev server:

npm start

Open simple $mol based ToDoMVC application:

start http://localhost:9080/hyoo/todomvc/-/test.html

Manual build

  • Execute npm start hyoo/todomvc to build standalone ToDoMVC application at hyoo/todomvc/-.
  • Execute npm start mol/regexp to build standalone $mol_regexp library at mol/regexp/-.

NPM Integration

Publish to NPM

npm start mol/regexp
npm publish mol/regexp/-

Usage from NPM

Import to CJS

const { $mol_regexp: RE } = require( 'mol_regexp' )

Import to ESM

import { $mol_regexp as RE } from 'mol_regexp'

NodeJS dependencies

Using $node namespace you can auto-install and dynamically lazy load any NPM packages:

const isOdd = $node['is-odd']( '123' )

Bundling NPM dependencies

It's better to use implementations from MAM ecosystem. But you can bundle NPM packages too through adapter like:

// lib/ramda/ramda.ts
namespace $ {
	export let $lib_ramda = require('ramda/src/index.js') as typeof import('ramda')
}

Custom package

Video tutorial

  1. Create dir for your namespace. my in example.
  2. Create dir for your module. my/alert in example.
  3. Create module source file. my/alert/alert.ts with content function $my_alert( msg : string ) { alert( msg ) } in example.
  4. Create dir for your application module. my/app in example.
  5. Create application source file. my/app/app.ts with content $my_alert( 'Hello, World!' ) in example.
  6. Create application web entry point. my/app/index.html with content <script src="-/web.js"></script> in example.
  7. Start development server: npm start
  8. Open your application. http://localhost:9080/my/app/-/test.html in example.

MAM based projects

Keywords

FAQs

Package last updated on 25 Feb 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc