Create a package.json with the command:
npm init
Add bap-node-microframework dependency to package.json and install it:
npm install bap-node-microframework --save
Create a tsconfig.json which specifies the root files and the compiler options required to compile the project (see https://www.typescriptlang.org/docs/handbook/tsconfig-json.html for further details).
If you have not installed it yet, install globally typings:
npm install typings -g
Install the following typings:
typings install dt~express dt~mime dt~node dt~serve-static dt~socket.io --global --save
Create a file config/default.yml to configure logging:
log:
    rotate:
        frequency: daily
    verbose: true
    file_format: api-%DATE%.log
    date_format: YYYYMMDD
    skip: none
Create a file app/app.ts:
import { Container, Application, ApplicationOptions, KernelInterface } from 'bap-node-microframework/core';
import * as express from "express";
declare function require(path: string, options?: any): any;
Container.setParameter('appDirectory', __dirname);
Container.registerService('router', express.Router());
import { Kernel } from "./kernel";
var kernel = new Kernel();
var App = new Application(<ApplicationOptions>{
    sockets: true,
    oauth: false
}, <KernelInterface>kernel);
App.start();
console.log("Server listening on http://localhost:3000...");
module.exports = {
    server: App.httpServer,
    Container: Container
};
Create a file app/kernel.ts:
import * as express from "express";
import { KernelInterface } from 'bap-node-microframework/core';
export class Kernel extends KernelInterface {
    boot(app, io: SocketIO.Server) {}
}