caviar v6.0.1
⚠️ This document is out-of-date
A pluggable and extendable skeleton which help to integrate several existing web frameworks to create your own micro frontends out of the box with even zero configuration.
An architectural style where independently deliverable frontend applications are composed into a greater whole
Getting Started
mkdir hello && cd hello
yo generator-caviar
npm run devYeah, we have our first application
File Structure
project/
|-- app
|-- pages
|-- caviar.config
| |-- .env
| |-- client.env
| |-- index.js
|-- package.json
|-- ...Thinking in caviar
The sections below is for development purpose
Extend caviar for your own business
Config chain
How to write caviar plugins
API Documentation
const {
Sandbox,
Server,
ConfigLoader
} = require('caviar')new Sandbox(options)
- options
Object- cwd
paththe current working directory - port?
numberserver port - dev?
boolean=falsewhether is for development purpose - serverClassPath?
paththe file path of theServerclass. Defaults to theServerclass path of thecaviarproject. - configLoaderClassPath?
paththe file path of theConfigLoaderclass
- cwd
Creates a new sandbox. Sandbox is design to filter the environment variables.
await sandbox.start(): ChildProcess
Start the sandbox, and it will create a new Server by passing {cwd, port, dev} as options.
new Server(options)
- options
Object- cwd
- port?
Numberoptions.portwill overrideconfig.portofcaviar.config.js - dev?
- configLoaderClassPath?
Create a new Server
const server = new Server({
cwd,
dev: true
})
await server.ready()
server.listen(8888)await server.ready(): this
Initialize the server
server.callback(): Function
Returns a callback function suitable for the http.createServer() method to handle a request.
require('http')
.createServer(server.callback())
.listen(8888)This method must NOT be called before the server is ready (await server.ready())
server.listen(port?): Promise
- port?
numberoptional server port. Ifportis specified, it will overrideoptions.port. - callback?
Function
License
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
8 years ago
