# fibjs-fibx

> fibjs web framework

Latest version **0.2.0** (published 2016-02-17) · ISC license · 0 weekly downloads

## Install

```sh
npm install fibjs-fibx
pnpm add fibjs-fibx
yarn add fibjs-fibx
bun add fibjs-fibx
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.2.0 |
| Published | 2016-02-17 |
| First published | 2015-12-23 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Known vulnerabilities | 0 |
| Install scripts | yes |
| Author | Rube |
| Maintainers | rube |
| Keywords | fibjs, fibx, web, framework |

## Links

- npm: https://www.npmjs.com/package/fibjs-fibx
- Repository: https://github.com/fibx/fibx
- Homepage: https://github.com/fibx/fibx#readme
- Issues: https://github.com/fibx/fibx/issues
- npm.io page: https://npm.io/package/fibjs-fibx

## Alternatives

- [@opentelemetry/exporter-zipkin](https://npm.io/package/@opentelemetry/exporter-zipkin.md) — 14.8M weekly downloads
- [pusher-js](https://npm.io/package/pusher-js.md) — 2.0M weekly downloads
- [browserify](https://npm.io/package/browserify.md) — 1.7M weekly downloads
- [sqs-consumer](https://npm.io/package/sqs-consumer.md) — 1.7M weekly downloads
- [@sanity/eventsource](https://npm.io/package/@sanity/eventsource.md) — 930.8K weekly downloads

## Recent versions

- 0.2.0 (latest) — 2016-02-17
- 0.1.6 — 2015-12-25
- 0.1.5 — 2015-12-23
- 0.1.4 — 2015-12-23
- 0.1.3 — 2015-12-23
- 0.1.2 — 2015-12-23
- 0.1.1 — 2015-12-23
- 0.1.0 — 2015-12-23

## README

#FibX

***

**fibx** 是 fibjs 的一个 web 框架,提供了中间件安装以及请求接受和应答的功能

##Installation
  
```
npm install fibjs-fibx
```

##Example     

```javascript
var app = require('fibjs-fibx')();
var http = require('http');

app.use(function(next) {

    this.cookies.set('hello', 'me');
    this.state = {};
    this.state.number = 1;
    this.state['back'] = 'fibx';
    next();
    this.body = 'hello world! ------' + this.state['back'] + 'number:' + this.state.number;
});

//设置1000个中间件
for (var i = 0; i < 1000; i++) {
    app.use(function(next) {
        this.state.number++;
        next && next();
    });
}

//app.use 的用法详见 Api Doc
app.use('^/go(/.*)$', http.fileHandler('./'));

app.use('^/a(/.*)$', function(next) {
    this.state.number = -1;
    next();
});
app.use('^/a(/.*)$', function() {
    this.state.number = -2;
});

app.use('^(/.*)$', function() {
    this.state.number++;
});

app.listen(10023);
```

##Api

[API Doc](https://github.com/fibx/fibx/blob/master/doc/api.md)
       
##Other          

如果你想写一个 fibjs 模块上传到 npm,必须像本项目在目录下放如 fibjs-install.js 的文件.							

```javascript			 
var fs = require('fs');
var os = require('os');
var process = require('process');

var modulesPath = '../../.modules';
var moduleName = JSON.parse(fs.readFile('package.json').toString()).name;

var isExists = fs.exists(modulesPath);
!isExists && fs.mkdir(modulesPath);

switch (os.type) {
    case 'Darwin':
        process.exec('ln -s ../node_modules/' + moduleName + ' ' + modulesPath + '/' + moduleName);
        break;
    default :
        process.exec('ln -s ../node_modules/' + moduleName + ' ' + modulesPath + '/' + moduleName);
}
```

然后在 package.json 中添加     
  
```json					
"scripts": {
    "install": "fibjs fibjs-install.js",
 }
```           

##Next      				

more 中间件 : 					

* session										
* static			
* body parse			
* and more ...

---
_Source: https://npm.io/package/fibjs-fibx · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
