# os-shim

> Native OS module API shim for older node.js versions

Latest version **0.1.3** (published 2015-08-06) · 0 weekly downloads

## Install

```sh
npm install os-shim
pnpm add os-shim
yarn add os-shim
bun add os-shim
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.1.3 |
| Published | 2015-08-06 |
| First published | 2013-12-11 |
| Weekly downloads | 0 |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >= 0.4.0 |
| Dependencies | 0 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 12 |
| Maintainers | h2non |
| Keywords | os, tmpdir, endianness, shim |

## Links

- npm: https://www.npmjs.com/package/os-shim
- Repository: https://github.com/h2non/node-os-shim
- Homepage: http://github.com/h2non/node-os-shim
- Issues: https://github.com/h2non/node-os-shim/issues
- npm.io page: https://npm.io/package/os-shim

## Alternatives

- [angular-pipes](https://npm.io/package/angular-pipes.md) — 5.6K weekly downloads
- [@ng-web-apis/midi](https://npm.io/package/@ng-web-apis/midi.md) — 2.6K weekly downloads
- [happn-3](https://npm.io/package/happn-3.md) — 1.6K weekly downloads
- [@opensip-cli/lang-go](https://npm.io/package/@opensip-cli/lang-go.md) — 1.2K weekly downloads
- [mongoose-typescript](https://npm.io/package/mongoose-typescript.md) — 85 weekly downloads

## Recent versions

- 0.1.3 (latest) — 2015-08-06
- 0.1.2 — 2013-12-11
- 0.1.1 — 2013-12-11
- 0.1.0 — 2013-12-11

## README

# Node OS shim [![Build Status](https://secure.travis-ci.org/AdesisNetlife/node-os-shim.png?branch=master)][travis] [![NPM version](https://badge.fury.io/js/os-shim.png)][badge]

> Native OS module API shim for older node.js versions

## About

Node.js team froze the [OS module API][1] in 0.10.x version, however the API differs a bit in lower node.js versions

This shim just provides the missing OS module API that is available on latest node.js versions.
You can now use the `os` package in old node.js versions without fear.

It's based on the current node.js [implementations][2]

## Installation

```
$ npm install os-shim --save[-dev]
```

## Usage

You simply should use the `os-shim` module instead of the `os` native node.js module

```js
var os = require('os-shim')
os.tmpdir()
```
You can mutate the `os-shim` module object without worring about it can create side effects in the native `os` module object

## The missing API

The following API is missing in node.js `0.8.x` and lower versions

#### os.tmpdir()
Returns the operating system's default directory for temp files

#### os.endianness()
Returns the endianness of the CPU. Possible values are "BE" or "LE"

#### os.EOL
A constant defining the appropriate End-of-line marker for the operating system

#### os.platform()
Returns the operating system platform

#### os.arch()
Returns the operating system CPU architecture

## Contributing

Instead of a formal styleguide, take care to maintain the existing coding style.

Add unit tests for any new or changed functionality

### Development

Clone the repository
```shell
$ git clone https://github.com/adesisnetlife/node-os-shim.git && cd node-os-shim
```

Install dependencies
```shell
$ npm install
```

Run tests
```shell
$ make test
```

## Release History

- **0.1.1** `2013-12-11`
    - Add platform() and arch() methods (for Node.js 0.4.x)
- **0.1.0** `2013-12-11`
    - Initial release

## To Do

- Add `os.networkInterfaces()` shim method

Do you miss something? Open an issue or make a PR!

## Contributors

* [Tomas Aparicio](http://github.com/h2non)

## License

Copyright (c) 2013 Adesis Netlife S.L and contributors

Released under MIT license

[1]: http://nodejs.org/api/os.html
[2]: https://github.com/joyent/node/blob/master/lib/os.js
[travis]: http://travis-ci.org/AdesisNetlife/node-os-shim
[badge]: http://badge.fury.io/js/os-shim

---
_Source: https://npm.io/package/os-shim · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
