Package Exports
- @tinyhttp/app
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@tinyhttp/app) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
tinyhttp
⚠ The project is in development. Please don't use in production.
tinyhttp is a modern Express-like web framework for Node.js. It uses a bare minimum amount of dependencies trying to avoid legacy hell.
Here is a short list of most important features that tinyhttp has:
- ⚙ Full Express middleware support
- ↪ Async middleware support
- 📦 8x smaller than Express
- 🏃 No legacy dependencies
- 🔨 Types out of the box
- ☑ Native ESM and CommonJS support
To get started, visit tinyhttp website.
Install
Node.js 12.4.0 or newer is required.
# npm
npm i @tinyhttp/app
# pnpm
pnpm i @tinyhttp/app
# yarn
yarn add @tinyhttp/app
Docs
You can see the documentation here.
Example
import { App } from '@tinyhttp/app'
import logger from '@tinyhttp/logger'
const app = new App()
app
.use(function someMiddleware(req, res, next) {
console.log('Did a request')
next()
})
.get('/', (_, res) => {
res.send('<h1>Hello World</h1>')
})
.get('/page/:page/', (req, res) => {
res.status(200).send(`${JSON.stringify(req.params, null, 2)}`)
})
.use(logger())
.listen(3000)
For more examples check examples folder.
Middlewares
tinyhttp offers a list of premade middleware for common tasks.
Search and explore the full list at middleware search page.
License
MIT © v1rtl