docs(readme): write the detailed description
parent
2030c7215c
commit
9150b2e56b
59
README.md
59
README.md
|
@ -1,13 +1,58 @@
|
|||
# [WIP] monorepo for Hono middleware
|
||||
# monorepo for Hono third-party middleware
|
||||
|
||||
This repository is monorepo for middleware of Hono.
|
||||
This repository is monorepo for third-party middleware of Hono.
|
||||
We develop middleware in this repository and manage the issues and pull requests.
|
||||
|
||||
**Still working in progress**.
|
||||
## What is third-party middleware?
|
||||
|
||||
## Author
|
||||
Hono has three types of middleware.
|
||||
|
||||
Yusuke Wada
|
||||
1. Custom middleware - Created by users themselves.
|
||||
2. Built-in middleware - Included in the Hono core package. It does not depend on any other external libraries.
|
||||
3. Third-party middleware - Created outside of the core package. It can depend on the external libraries.
|
||||
|
||||
## License
|
||||
Third-party middleware is maintained in this `github.com/honojs/middleware` repository and published to npm in the `@honojs` namespace. For example, a third-party middleware called hello is hosted at `github.com/honojs/middleware/packages/hello` and distributed under the name `@honojs/hello`.
|
||||
You can install with the following command.
|
||||
|
||||
MIT
|
||||
```
|
||||
npm install @honojs/hello
|
||||
```
|
||||
|
||||
For Deno, the modules, we do not publish them on `deno.land/x`, but distribute them via CDNs such as Skypack and esm.sh. We will also use the `npm:` that will be introduced in the Deno itself in the future.
|
||||
|
||||
```ts
|
||||
import { hello } from 'npm:@honojs/hello'
|
||||
```
|
||||
|
||||
## How to contribute
|
||||
|
||||
Anyone can propose third-party Middleware.
|
||||
The Hono maintainers and other contributors will discuss to whether we accept the middleware or not.
|
||||
If it's OK, it will be maintained in this repository.
|
||||
Basically, the proposer maintains it.
|
||||
|
||||
The specific flow is as follows
|
||||
|
||||
1. Clone this repository
|
||||
2. Write your middleware. Refer to [hello Middleware](https://github.com/honojs/middleware/tree/main/packages/hello).
|
||||
3. Create the pull request.
|
||||
|
||||
We use [changesets](https://github.com/changesets/changesets) to manage releases and CHANGELOG.
|
||||
Run the following command at the top level to describe any changes.
|
||||
|
||||
```
|
||||
yarn changeset
|
||||
```
|
||||
|
||||
When merged into main, a pull request for release is created.
|
||||
The Hono maintainers will merge it to release the package at the appropriate time.
|
||||
|
||||
## Migration from the repository
|
||||
|
||||
If possible, please migrate middleware previously managed in an independent repository to this one.
|
||||
Create the pull request with the content in the middleware repository. Perhaps `git-subtree` might be useful.
|
||||
|
||||
## Author & License
|
||||
|
||||
The Author of this repository is Yusuke Wada <<https://github.com/yusukebe>>. However, the code under the `packges/*` is in each Middleware author.
|
||||
Basically, distribute under the MIT license.
|
||||
|
|
Loading…
Reference in New Issue