Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pbkit/pbkit
Protobuf toolkit for modern web development
https://github.com/pbkit/pbkit
deno hacktoberfest protobuf typescript
Last synced: 6 days ago
JSON representation
Protobuf toolkit for modern web development
- Host: GitHub
- URL: https://github.com/pbkit/pbkit
- Owner: pbkit
- Created: 2021-02-02T15:49:56.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2023-12-20T08:19:50.000Z (about 1 year ago)
- Last Synced: 2024-05-01T15:36:20.724Z (10 months ago)
- Topics: deno, hacktoberfest, protobuf, typescript
- Language: TypeScript
- Homepage: https://pbkit.dev
- Size: 51.4 MB
- Stars: 289
- Watchers: 13
- Forks: 22
- Open Issues: 33
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
- awesome-repositories - pbkit/pbkit - Protobuf toolkit for modern web development (TypeScript)
README
pbkit
![]()
Protobuf toolkit for modern web development
Homepage
![]()
Join our community!
![]()
Follow our SNS account!
![]()
Releases
![]()
![]()
![]()
## What is Protobuf?
> Protocol buffers are Google's language-neutral, platform-neutral, extensible
> mechanism for serializing structured data – think XML, but smaller, faster,
> and simpler.## And what is Pbkit?
Pbkit is a collection of tools related to protobuf.
It is written in TypeScript and uses the Deno api.
However, it can be executed in any JavaScript environment (including Node.js or
web browser) because it does not use platform APIs inside the `core` directory.## What features are provided?
### CLI
- `pb` - Protobuf schema compiler like `protoc`.
- `protoc` has native binary dependencies, but `pb` command is written in pure
TypeScript, so it can be used comfortably in Node.js projects, etc., and can
even easily be run in a web browser.
- [How to install and how to use](./cli/pb/README.md)
- `pollapo` - A package manager for the protobuf schema.
- A GitHub repository of `.proto` files is treated as a single pollapo
package.
- [How to install and how to use](./cli/pollapo/docs/en/getting-started.md)### Browser Extension
- pbkit-devtools
-![]()
- [repo](https://github.com/pbkit/pbkit-devtools)
- [chrome web store](https://chrome.google.com/webstore/detail/pbkit-devtools/fjacmiijeihblfhobghceofniolonhca)### Editor Extension
- vscode-pbkit
- Syntax highlight, Go to definition for VSCode.
- [repo](https://github.com/pbkit/vscode-pbkit)
- [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=pbkit.vscode-pbkit)### Library
- Deno - [deno.land/x/pbkit](https://deno.land/x/pbkit)
- NPM - [pbkit][npm pbkit]
- [@pbkit/runtime][@pbkit/runtime] - This is a separate package with only the
`runtime` folder.
- See also -
- RPC related libraries
- [frpc-client](https://www.npmjs.com/package/@pbkit/frpc-client)
- [frpc-server](https://www.npmjs.com/package/@pbkit/frpc-server)
- [grpc-client](https://www.npmjs.com/package/@pbkit/grpc-client)
- [grpc-web-client](https://www.npmjs.com/package/@pbkit/grpc-web-client)[npm pbkit]: https://www.npmjs.com/package/pbkit
[@pbkit/runtime]: https://www.npmjs.com/package/@pbkit/runtime## Who uses pbkit?
### Company
- [Riiid][riiid] - Pbkit was originally created to use protobuf in Riiid.
- [Karrot][당근마켓] - Use Pbkit to generate gRPC client used in Node.js servers.
- [PortOne][포트원] - Use Pbkit to generate gRPC client used in Node.js servers.[riiid]: https://riiid.com/
[당근마켓]: https://team.daangn.com/
[포트원]: https://portone.io/### Open source project
- [AST explorer][AST explorer] - Used to parse protobuf files
- [AstQL][AstQL] - Used to parse protobuf files[AST explorer]: https://github.com/fkling/astexplorer
[AstQL]: https://github.com/gen-codes/astql## License
pbkit is dual-licensed under Apache 2.0 and MIT terms.\
see [LICENSE-APACHE][LICENSE-APACHE] and [LICENSE-MIT][LICENSE-MIT] for details.[LICENSE-APACHE]: ./LICENSE-APACHE
[LICENSE-MIT]: ./LICENSE-MIT