# ds-store

> .DS_Store manipulation and creation from node.js

Latest version **0.1.6** (published 2016-05-15) · MIT license · 0 weekly downloads

## Install

```sh
npm install ds-store
pnpm add ds-store
yarn add ds-store
bun add ds-store
```

## 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.6 |
| Published | 2016-05-15 |
| First published | 2014-01-07 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 3 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 23 |
| Author | Linus Unnebäck |
| Maintainers | linusu |

## Links

- npm: https://www.npmjs.com/package/ds-store
- Repository: https://github.com/LinusU/node-ds-store
- Homepage: https://github.com/LinusU/node-ds-store#readme
- Issues: https://github.com/LinusU/node-ds-store/issues
- npm.io page: https://npm.io/package/ds-store

## Dependencies (3)

- [tn1150](https://npm.io/package/tn1150.md) ^0.1.0
- [macos-alias](https://npm.io/package/macos-alias.md) ~0.2.5
- [bplist-creator](https://npm.io/package/bplist-creator.md) ~0.0.3

## Recent versions

- 0.1.6 (latest) — 2016-05-15
- 0.1.5 — 2016-05-15
- 0.1.4 — 2014-12-10
- 0.1.3 — 2014-12-10
- 0.1.2 — 2014-07-07
- 0.1.1 — 2014-01-13
- 0.1.0 — 2014-01-07

## README

# node-ds-store

.DS_Store manipulation and creation from node.js

## Status

Currently the implementation uses a pre-created `.DS_Store` file
which it then modifies to suit the needs. This places several
limitations and also only allows creating new files from scratch.

## Installation

```sh
npm install ds-store
```

## Usage

```javscript
var DSStore = require('ds-store');

var file = new DSStore();
```

## API

### file.setBackgroundPath(path)

Set the background image to file specified by `path`.

### file.setBackgroundColor(red, green, blue)

Set the background color to the color specified by three floats between 0 and 1.

### file.setIconSize(size)

Set the size of all icons in the folder to `size`.

### file.setIconPos(name, x, y)

Position a file icon for file named `name` at `x, y`.

### file.setWindowPos(x, y)

Set the Finder window position to `x, y`.

### file.setWindowSize(w, h)

Set the Finder window size to `w, h`.

### file.vSrn(value)

Set the `vSrn` value to either `0` or `1`.

Effect currently unknown.

### file.write(path, cb)

Write the `.DS_Store` information to file at `path`.

`cb` will get called with `err` upon file creation.

## Future

I have started work on a Buddy Allocator and B-Tree implementation,
but there is still lots of work required. Having theese would make
it easy to both read and manipulate files. It also wouldn't require
shipping a `DSStore-clean` file.

## Thanks

A special thanks to Wim Lewis who have written a complete implementation
in perl. His documentation of the file format helped me very much.

http://search.cpan.org/~wiml/Mac-Finder-DSStore/DSStoreFormat.pod

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