mirror of
https://github.com/Permissionless-Software-Foundation/x402-base-facilitator.git
synced 2026-09-21 16:52:01 -07:00
dfc9cdb0ccb895cb4c4e617ae9053f63b2871ee0
babel-free-koa2-api-boilerplate
Boilerplate for building APIs with koa2 and mongodb. Modified to remove babel as a dependency. This repository is now natively compatible with node v8.9 or higher.
With the exception of removing babel as a dependency, this repository is identical to Adrian Obelmejias' koa-api-boilerplate repository.
This project covers basic necessities of most APIs.
- Authentication (passport & jwt)
- Database (mongoose)
- Testing (mocha)
- Doc generation with apidoc
- linting using standard
Requirements
- node ^8.9.4
- npm ^5.7.1
Installation
git clone https://github.com/christroutner/babel-free-koa2-api-boilerplate.git
Features
- koa2
- koa-router
- koa-bodyparser
- koa-generic-session
- koa-logger
- MongoDB
- Mongoose
- Passport
- Nodemon
- Mocha
- apidoc
- ESLint
Structure
├── bin
│ └── server.js # Bootstrapping and entry point
├── config # Server configuration settings
│ ├── env # Environment specific config
│ │ ├── common.js
│ │ ├── development.js
│ │ ├── production.js
│ │ └── test.js
│ ├── index.js # Config entrypoint - exports config according to envionrment and commons
│ └── passport.js # Passportjs config of strategies
├── src # Source code
│ ├── modules
│ │ ├── controller.js # Module-specific controllers
│ │ └── router.js # Router definitions for module
│ ├── models # Mongoose models
│ └── middleware # Custom middleware
│ └── validators # Validation middleware
└── test # Unit tests
Usage
npm startStart server on live modenpm run devStart server on dev mode with nodemonnpm run docsGenerate API documentationnpm testRun mocha tests
Documentation
API documentation is written inline and generated by apidoc.
Visit http://localhost:5000/docs/ to view docs
License
MIT
Languages
JavaScript
97.5%
Shell
1%
HTML
1%
Dockerfile
0.5%