Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wireapp/wire-web-core
Collection of npm modules created by Wire's web team.
https://github.com/wireapp/wire-web-core
hacktoberfest typescript wire
Last synced: 3 months ago
JSON representation
Collection of npm modules created by Wire's web team.
- Host: GitHub
- URL: https://github.com/wireapp/wire-web-core
- Owner: wireapp
- Created: 2021-02-01T15:37:26.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-06-24T12:45:34.000Z (5 months ago)
- Last Synced: 2024-07-29T03:51:04.536Z (4 months ago)
- Topics: hacktoberfest, typescript, wire
- Language: TypeScript
- Homepage: https://www.npmjs.com/org/wireapp
- Size: 4.02 MB
- Stars: 10
- Watchers: 6
- Forks: 4
- Open Issues: 29
-
Metadata Files:
- Readme: README.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# Wire
This repository is part of the source code of Wire. You can find more information at [wire.com](https://wire.com) or by contacting [email protected].
You can find the published source code at [github.com/wireapp](https://github.com/wireapp).
For licensing information, see the attached LICENSE file and the list of third-party licenses at [wire.com/legal/licenses/](https://wire.com/legal/licenses/).
# Wire for Web: Core
[![CI Status](https://github.com/wireapp/wire-web-core/actions/workflows/test_build_release.yml/badge.svg?branch=main)](https://github.com/wireapp/wire-web-core/actions/workflows/test_build_release.yml) [![Linting Status](https://github.com/wireapp/wire-web-core/actions/workflows/lint.yml/badge.svg?branch=main)](https://github.com/wireapp/wire-web-core/actions/workflows/lint.yml)
![Core packages](./wire_web_packages_core.svg)
Made with: [NPMGraph](https://npmgraph.js.org/)
## Motivation
This monorepo provides core packages which are required to send and receive encrypted messages on Wire. All packages are fully written in TypeScript.
## Development
### Preface
Every package comes with two TypeScript compiler configurations (`tsconfig.json` & `tsconfig.build.json`). The "build" config should **only** be used, when building a package for publication on npm. All other local development should never make use of compiled JavaScript code and always stick to the standard "tsconfig.json".
Thanks to the "paths" configuration in the main [tsconfig.json](./tsconfig.json), it is possible to make changes in a sub-package (e.g. "cbor") which take immediate (without prior compilation) effect on dependent packages (e.g. "proteus"). This only works, when there is no compiled (JS) code in the sub-package.
### Getting started
```bash
# Install dependencies
yarn install# Link packages
yarn boot# Test packages
yarn test:all
```### Releasing packages
#### Release new packages
Start with version "0.0.0" in `package.json` when creating a completely new package.
#### Release all packages
Publish all packages that have changed:
```
yarn release
```