open-index/open-npm huggingface dataset:
npm package: @something.technology/avro-typescript-converter
Description: Convert an AVRO schema to a TypeScript interface.
Author: Rinze Bruining, Erik Vullings
Latest version: 0.3.0

# AVRO typescript converter

Simple tool to convert AVRO schema's to TypeScript interfaces.
Based on [avro-typescript](https://github.com/joewood/avro-typescript), but with several fixes and improvements:

- Added a command line interface
- Stripped namespaces
- Added string enumerations
- Removed duplicated types
- Fixed array types with union arrays
- Uses the recommended naming convention for interfaces (IMyName)
- Added documentation from schema to output
- Optional concatenation to single file

## Installation

Intended to be used globally, so

```bash
npm i -g avro-typescript-converter
```

## Usage

Example:

```bash
avro-typescript-converter example/standard_cap-value.avsc -v
```

or

```bash
npm run example
```

## Build

Install the dependencies and run the compiler:

```bash
npm i
npm start
```
npm package: @something.technology/core
Description: Shared TypeScript config all our typescript based projects
Author: Philip Lenhart
Latest version: 0.0.17

# @something.technology/core

Core package provides some basic scripts which are listed in the following

## Overview

To get an overview about whats possible with the core you can use the help option of the command:
```
npx @something.technology/core --help
```

## Init Service Script

This script initializes a basic microservice based on express with all the required configurations.
It also integrates some basic scripts not only for linting and building the microservice but also you should be able to run the service instantly by running `yarn serve:dev`,

**Command:**
```
npx @something.technology/core init <targetDirectory>
```

For example when initializing a new service  in the current working directory you can type: 
`npx @something.technology/core init .`.

**Options:**

option | possible values | default | description
--- | --- | --- | ---
--type \<type> | react / react-native / service | service | Type of the (micro)service you want to initialize

## Init Configs Script

This script initializes the basic config files for ESLint, Prettier and Typescript. 
Existing configurations may be overwritten when running this script.

**Command:**
```
npx @something.technology/core init-configs <targetDirectory>
```

For example when initializing a new service  in the current working directory you can type:
`npx @something.technology/core init .`.

**Options:**

option | possible values | default | description
--- | --- | --- | ---
--type \<type> | react / react-native / service | service | Type of the (micro)service you want to initialize
npm package: @something.technology/microservice-utilities
Description: This library provides utilities which are helpful when building typescript based microservices. 
Author: Philip Lenhart
Latest version: 0.0.17

# @something.technology/microservice-utilities

Utilities, e.g. when working with express microservices.

## Express

**Environment variables:**

Name | default value | description
--- | --- | ---
PORT | 3000 | Port on which the express server will run
HEALTHCHECK_IP | - | IP address which is allowed to perform the healthcheck

### Healthcheck

We provide a helper function to make it easy to add a healthcheck to your express application.
You need to provide the `HEALTHCHECK_IP` env variable. If the env variable is not set, every client is allowed to perform the healthcheck.

Usage:

```ts
import express from 'express'
import { logger, healthcheck } from '@something.technology/microservice-utilities';

const PORT = process.env.PORT || 3000
const HEALTHCHECK_ROUTE = process.env.HEALTHCHECK_ROUTE || '/health'

const run = async (): Promise<void> => {
  try {
    const app = express()

    app.get('/', (_, res) => {
      res.send('Hello Something!')
    })

    app.get(HEALTHCHECK_ROUTE, healthcheck);

    app.listen(PORT, () => {
      logger.info(`Example app listening at http://localhost:${PORT}`)
    })

  } catch (e) {
    logger.error(e);
  }
};

run().then(() => {});
```

When running the core init script `npx @something.technology/core init .` this boilerplate code will be created automatically for you.
npm package: @something.technology/redux-connector
Description: Connector between redux and socket io 
Author: Philip Lenhart
Latest version: 0.0.9

# Redux Connector

Redux connector takes redux actions and transforms it to socket.io messages when criterias (can be passed in SocketConnection constructor) are met.
Default is to redirect messages where type starts with `@@socket/`.

This library is inspired by https://github.com/itaylor/redux-socket.io but is adding also strong TypeScript support.

## Setup

Example Setup with Redux Sagas:

_configureStore.ts_
```typescript
const socketConnection = new SocketConnection('http://localhost:3000', '/socket');

const configureStore = (): Store<ApplicationState> => {
  const sagaMiddleware = createSagaMiddleware();

  const middlewareToApply: Middleware[] = [
    sagaMiddleware,
    createSocketMiddleware(socketConnection),
  ];

  const store = createStore(rootReducer, applyMiddleware(...middlewareToApply));
  sagaMiddleware.run(rootSaga);
  return store;
};

export default configureStore;
```

_store/socketConnection/sagas.ts_
```typescript
import { put, StrictEffect } from 'redux-saga/effects';
import { actions } from '@something.technology/redux-connector';

export function* initConnection(): Generator<StrictEffect, void, undefined> {
  yield put(actions.openSocketConnection());
}

```

_rootSaga.ts_
```typescript
import { fork, all, StrictEffect } from 'redux-saga/effects';
import * as socketConnectionSagas from './socketConnection/sagas';

export default function* rootSaga(): Generator<StrictEffect, void, undefined> {
  yield all([
    fork(socketConnectionSagas.initConnection),
    // Add additional sagas here
  ]);
}
```
npm package: @something.technology/socket-connector
Description: ## Environment Variables
Author: Philip Lenhart
Latest version: 0.0.9

# @something.technology/socket-connector

## Environment Variables

- MESSAGE_EVENT_NAME: defaults to `'message'`
- PORT: defaults to 3000
- HEALTHCHECK_ROUTE: defaults to `'/health'`

## Running example server

There is an example service which can be started by running `yarn start:dev`.
In this example an automatic LoginResponse is triggered when sending a LoginRequest message.
npm package: @something.technology/ts-config
Description: Shared TypeScript config all our typescript based projects
Author: Philip Lenhart
Latest version: 0.0.17

# Shared Typescript Configs

## TypeScript Microservices

Example how to use this package in your typescript services:
```json
{
  "extends": "@something.technology/ts-config",
  "compilerOptions": {
    "types": ["jest"]
  }
}
```

## React Apps

Example how to use this package in your React apps:
```json
{
  "extends": "@something.technology/ts-config/react-native",
  "compilerOptions": {
    "types": ["jest"]
  }
}
```

## React Native Apps

Example how to use this package in your React Native apps:
```json
{
  "extends": "@something.technology/ts-config/react-native",
  "compilerOptions": {
    "types": ["jest"]
  }
}
```
npm package: @somethings/eslint-config-base
Description: Base ESLint configuration.
Author: Anton Galtsev
Latest version: 7.0.1

My personal ESLint config.

Major version is synchronized with `eslint` package.

Useful links:
- [ESLint user guide](https://eslint.org/docs/user-guide/configuring/)
- [Rules documentation](https://eslint.org/docs/rules/)
- [Airbnb config](https://github.com/airbnb/javascript/tree/master/packages/eslint-config-airbnb-base)
npm package: @somethings/eslint-config-typescript
Description: Typescript ESLint configuration.
Author: Anton Galtsev
Latest version: 4.0.1

My personal TypeScript ESLint config.

Major version is synchronized with `typescript-eslint` plugin package.

Useful links:
- [Plugin documentation](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/README.md)
- [All rules documentation directory](https://github.com/typescript-eslint/typescript-eslint/tree/master/packages/eslint-plugin/docs/rules)
- [All rules source](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/src/rules/index.ts)
- [Recommended config source](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/src/configs/recommended.ts)