JSPM

@tinyhttp/app

0.1.44
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 173238
  • Score
    100M100P100Q157668F
  • License MIT

tinyhttp core

Package Exports

  • @tinyhttp/app
  • @tinyhttp/app/package.json

Readme

tinyhttp

Twitter npm type definitions Vulnerabilities Last commit NPM

⚠ 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