1.0.6 • Published 6 years ago
file-function-server v1.0.6
🕊File Function Server
No-Frills Node.js API Endpoints
⏰ 60-Second Setup Starting... Now!
Requirements: Node.js >=7, NPM or Yarn
⬇️ Install
npm init(if fresh project)
npm i file-function-server
or 
yarn add file-function-server
📂 Create Functions Folder
📦your-project
 ┣ 📂functions
 ┗ 📜package.json👨🏭 Create File Function
Routes are defined by naming files & folders
📦your-project
 ┣ 📂functions
 ┃ ┗ 📜hello-world.js
 ┗ 📜package.jsonThe endpoint handler is the default node module export. It takes two arguments: 
1. req (express.Request type) 
2. res (express.Response type)
hello-world.js (JavaScript)
module.exports.default = function (req, res) {
  return 'Hello World!';
};export default (req, res) => 'Hello World!';import { FileFunctionHandler } from 'file-function-server';
export default ((req, res) => {
 // Intellisense enabled!
 return 'Hello World!';
}) as FileFunctionHandler;Script
Finally, add the following to your package.json
"scripts": {
 "start": "file-function-server"
}📻 Generated API
Run npm run start or yarn start from the command line.
Your API Endpoints are visible at localhost:9000/functions
| Endpoint | GET | POST | PUT | PATCH | DELETE | 
|---|---|---|---|---|---|
| /functions/hello-world | ✅ | ✅ | ✅ | ✅ | ✅ | 
Programmatic Usage
const { FileFunctionServer } = require('file-function-server');
new FileFunctionServer(/* optional config */).start();Custom Function Directory
const { FileFunctionServer } = require('file-function-server');
const path = require('path');
new FileFunctionServer({
 functionsDir: path.join(__dirname, '/api-functions')
}).start();⚙️ Config Object
| Property | Description | Required | Default | 
|---|---|---|---|
| app | Express App | 🚫 | New express app | 
| functionsDir | Directory containing file functions | 🚫 | <current-working-directory>/functions | 
| port | Port to start server on | 🚫 | PORTEnvironment Variable or9000 |