Mam owns Agnostic Modules. This is base MAM project.
- 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_http_resource/$jin.time.momentin*.JAM.JS/*.TSor--mol_skin_light/[mol_page_title]/.my-header-avatarin*.CSS. - PostCSS support. Write a cutting age css code.
- Development server with automatic bundle building on request. If you use it then it will be bundled.
- Build anyone module as standalone bundle. You can develope thousand of modules in one project.
- Cordova project generation. Simply add
config.xmlto module and-cordovawill be generated.
Checkout this repo (~2s):
git clone https://github.com/eigenmethod/mam.git ./mam && cd mamInstall node modules (~1m)
npm installBuild dev server from sources and start that (first ~15s, second ~10s):
npm startOpen simple ToDoMVC application (first ~4s, second ~0.3s):
start http://localhost/mol/app/todomvc/Open $mol demos application (first ~11s, second ~0.5s):
start http://localhost/mol/- Execute
npm start mol/app/todomvcto build ToDoMVC application (~13s). - Execute
npm start molto build $mol demos application (~15s).
- Create dir for your namespace.
myin example. - Create dir for your module.
my/alertin example. - Create module source file.
my/alert/alert.tswith contentfunction $my_alert( msg : string ) { alert( msg ) }in example. - Create dir for your application module.
my/appin example. - Create application source file.
my/app/app.tswith content$my_alert( 'Hello, World!' )in example. - Create application web entry point.
my/app/index.htmlwith content<script src="-/web.js"></script><script src="-/web.test.js"></script>in example. - Start developer server:
npm start - Open your application.
http://localhost/my/app/in example.