Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pingdotgg/webhookthing
https://github.com/pingdotgg/webhookthing
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/pingdotgg/webhookthing
- Owner: pingdotgg
- License: mit
- Created: 2022-10-19T03:41:52.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-08T17:25:43.000Z (11 months ago)
- Last Synced: 2024-06-30T15:47:13.161Z (5 months ago)
- Language: TypeScript
- Homepage: https://webhookthing.com
- Size: 3.44 MB
- Stars: 151
- Watchers: 2
- Forks: 4
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# webhookthing
Monorepo for [webhookthing](https://webhookthing.com)
[![NPM version][npm-image]][npm-url]
[![Downloads][downloads-image]][npm-url]## Getting Started
```bash
pnpm install
pnpm dev
```### For just cli
```bash
pnpm dev-cli
```[downloads-image]: https://img.shields.io/npm/dm/webhookthing?color=364fc7&logoColor=364fc7
[npm-url]: https://www.npmjs.com/package/webhookthing
[npm-image]: https://img.shields.io/npm/v/webhookthing?color=0b7285&logoColor=0b7285## Publishing Instructions
First, add changes with changesets:
```bash
npx changeset add
```Then, make a new version & publish
```bash
pnpm publish-cli
```## Making a new package
This is half a guide half our "lessons learned" from doing this too many times.
[Example PR where we added the logger package](https://github.com/pingdotgg/captain/pull/75)
1. Create a new folder in either `packages/` or `apps/`
a. Generally we recommend putting things in `packages/` if they'll be used in >1 thing in `apps/`
2. Create a package.json that imports the shared eslint and tsconfig
a. Probably easiest to copy-paste a minimal package at this point, `@captain/logger` is a good one
3. Add the new package's path to all the weird places it needs to be listed
a. `pnpm-workspace.yaml` (note: Might be covered already with one of the `/*` instances)
b. `.vscode/settings.json` -> `eslint.workingDirectories`
c. If being used in `cli`, `apps/cli/cli/tsup.config.ts` -> `noExternal`
4. Do one last `pnpm install` and you should be good to go!