# Directory Layer specification

**URL:** <https://forums.foundationdb.org/t/directory-layer-specification/1426>\
**Category:** FoundationDB Layers\
**Created:** [June 5, 2019, 9:53am UTC](https://forums.foundationdb.org/t/directory-layer-specification/1426 "2019-06-05T09:53:02Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![ex3ndr](https://sea1.discourse-cdn.com/foundationdb/user_avatar/forums.foundationdb.org/ex3ndr/32/389_2.png) [@ex3ndr](https://forums.foundationdb.org/u/ex3ndr)\
**Post date:** [June 5, 2019, 9:53am UTC](https://forums.foundationdb.org/t/directory-layer-specification/1426/1 "2019-06-05T09:53:02Z")

</div>

Hello! I want to port Directory Layer to JS bindings, but i wasn’t able to find any specs about Directory Layer and how it store keys and what are requirements for it. Does it exists?

---

<div class="post-metadata">

**Author:** ![ryanworl](https://sea1.discourse-cdn.com/foundationdb/user_avatar/forums.foundationdb.org/ryanworl/32/440_2.png) [@ryanworl](https://forums.foundationdb.org/u/ryanworl)\
**Post date:** [June 5, 2019, 10:40am UTC](https://forums.foundationdb.org/t/directory-layer-specification/1426/2 "2019-06-05T10:40:31Z")

</div>

The bindingtester has [sort of a specification](https://github.com/apple/foundationdb/blob/master/bindings/bindingtester/spec/directoryLayerTester.md) but the easiest way is just to line-by-line translate another binding’s implementation and then hook yours into bindingtester.

---

<div class="post-metadata">

**Author:** ![josephg](https://sea1.discourse-cdn.com/foundationdb/user_avatar/forums.foundationdb.org/josephg/32/84_2.png) [@josephg](https://forums.foundationdb.org/u/josephg)\
**Post date:** [June 17, 2019, 1:26pm UTC](https://forums.foundationdb.org/t/directory-layer-specification/1426/3 "2019-06-17T13:26:42Z")

</div>

Node bindings maintainer here. Let me know if you have any questions - I’d love to help move this along!

---

<div class="post-metadata">

**Author:** ![ex3ndr](https://sea1.discourse-cdn.com/foundationdb/user_avatar/forums.foundationdb.org/ex3ndr/32/389_2.png) [@ex3ndr](https://forums.foundationdb.org/u/ex3ndr)\
**Post date:** [June 17, 2019, 2:52pm UTC](https://forums.foundationdb.org/t/directory-layer-specification/1426/4 "2019-06-17T14:52:59Z")

</div>

Yeah! I started to work on our library for easier layer implementation! Started with wrapping in a different API and Directory Layer:

> **[openland/foundationdb](https://github.com/openland/foundationdb)**
>
> NodeJS library to work with FoundationDB. Contribute to openland/foundationdb development by creating an account on GitHub.

I have working directory layer that can open or create directories and use only autogenerated prefixes.

When i am done i think i will contribute to your core library.

We have a chat (that built on top of FDB) about FDB: [https://openland.com/invite/eCd728Y](https://openland.com/invite/eCd728Y) Feel free to join =)

---

<div class="post-metadata">

**Author:** ![alexmiller](https://sea1.discourse-cdn.com/foundationdb/user_avatar/forums.foundationdb.org/alexmiller/32/326_2.png) [@alexmiller](https://forums.foundationdb.org/u/alexmiller)\
**Post date:** [June 17, 2019, 9:50pm UTC](https://forums.foundationdb.org/t/directory-layer-specification/1426/5 "2019-06-17T21:50:20Z")

</div>

If anyone ever wants to contribute an actual spec for directory layer into the `design/` folder in the repo, you’re more than welcome to.

---

<div class="post-metadata">

**Author:** ![ex3ndr](https://sea1.discourse-cdn.com/foundationdb/user_avatar/forums.foundationdb.org/ex3ndr/32/389_2.png) [@ex3ndr](https://forums.foundationdb.org/u/ex3ndr)\
**Post date:** [June 17, 2019, 11:03pm UTC](https://forums.foundationdb.org/t/directory-layer-specification/1426/6 "2019-06-17T23:03:14Z")

</div>

I will, but right now i need to reverse-engineer it to do so =)
