A pluggable and extendable web framework which integrates React, Next and Koa to create your own web application out of the box with even zero configuration.
mkdir hello && cd hello
yo generator-caviar
npm run dev
Yeah, we have our first application
project/
|-- app
|-- pages
|-- caviar.config
| |-- .env
| |-- client.env
| |-- index.js
|-- package.json
|-- ...
const {
Sandbox,
Server
} = require('caviar')
- options
Object
- cwd
path
the current working directory - port?
number
server port - dev?
boolean=false
whether is for development purpose - serverClassPath?
path
the file path of theServer
class. Defaults to theServer
class path of thecaviar
project.
- cwd
Creates a new sandbox. Sandbox is design to filter the environment variable.
Start the sandbox, and it will create a new Server
by passing {cwd, port, dev}
as options.
- options
Object
- cwd
- port?
Number
options.port
will overrideconfig.port
ofcaviar.config.js
- dev?
Create a new Server
const server = new Server({
cwd,
dev: true
})
await server.ready()
server.listen(8888)
Initialize the server
- port?
number
server port. Ifport
is specified, it will overrideoptions.port
.
This method must NOT be called after the server is ready (await server.ready()
)
The sections below is for development purpose