A very efficient, flexible Javascript framework for user facing interfaces.
$ npm i stnd.js
/app
/components
/home
/home.js
/home.html
/home.css
/view
/view.js
/view.html
/view.css
/index.html
/main.js
var standard = require("stnd.js");
var view = require("./app/components/view/view.js");
var home = require("./app/components/home/home.js");
var mainContent = require("./main.html")
std.storeComponent("main", {
data: {},
template: mainContent,
events:[{
target: '',
onClick: function(){}
}]
})
std.renderOnTarget("home", "#renderHere");
std.passData("view", {
title: "Data coming from home component"
})
set.setData("home",{num: 6});
You will need to bundle everything and send to server for which you can use webpack bundler and a "html-loader"
$ npm install webpack webpack-cli --save-dev $ npm i html-loader
const path = require("path");
module.exports = {
entry: "./main.js",
output: {
filename: "bundle.js",
path: path.resolve(__dirname, "dist")
},
module: {
rules: [
{
test: /\.html?$/,
loader: "html-loader"
}
]
}
};
<div id="root"></div>
require("stnd.js");
var home = require("./app/components/home/home.js");
var view = require("./app/components/view/view.js");
//bootstrap
std.renderOnTarget("home", "#root");
var std = require("stnd.js"
var homeTemplate = require("./home.html");
std.storeComponent("home", {
data: { title: " Inside home Component" },
template: homeTemplate,
events: [
{
target: "#renderView",
onClick: function() {
std.renderOnTarget("view", "#root");
}
}
]
});
export default function home() {}
<h1>Home</h1>
<button id="renderView">Render view component</button>
{{title}}
var std = require("stnd.js"
var viewTemplate = require("./view.html");
std.storeComponent("view", {
data: { title: "Inside View Component" },
template: viewTemplate,
events: [
{
target: "#renderHome",
onClick: function() {
std.renderOnTarget("home", "#root");
}
}
]
});
export default function view() {}
<h1>View</h1>
<button id="renderHome">Render Home Component on root</button>
{{title}}
the apis and examples on https://yashkumar6640.github.io/stdFetch/
standardJS is MIT Licensed