# etna

> NoSQL in memory Database

Latest version **0.0.4-alpha** (published 2019-09-10) · MIT license · 0 weekly downloads

## Install

```sh
npm install etna
pnpm add etna
yarn add etna
bun add etna
```

Provides the command `etna`.

## 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.0.4-alpha |
| Published | 2019-09-10 |
| First published | 2019-09-08 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 2 |
| Unpacked size | 11.4 KB |
| Known vulnerabilities | 0 (+3 in 1 direct dependencies) |
| Install scripts | no |
| GitHub stars | 7 |
| Author | Michele Riva |
| Maintainers | micheleriva |
| Keywords | database, redis, in-memory, nosql, schemaless, hashtable |

## Links

- npm: https://www.npmjs.com/package/etna
- Repository: https://github.com/etnadb/etna
- Homepage: https://github.com/etnadb/etna#readme
- Issues: https://github.com/etnadb/etna/issues
- npm.io page: https://npm.io/package/etna

## Dependencies (2)

- [ws](https://npm.io/package/ws.md) 7.1.2
- [dotenv](https://npm.io/package/dotenv.md) 8.1.0

## Alternatives

- [memory-cache](https://npm.io/package/memory-cache.md) — 795.0K weekly downloads
- [@httptoolkit/proxy-agent](https://npm.io/package/@httptoolkit/proxy-agent.md) — 11.2K weekly downloads
- [express-cache-controller](https://npm.io/package/express-cache-controller.md) — 5.3K weekly downloads
- [http-cache-middleware](https://npm.io/package/http-cache-middleware.md) — 4.5K weekly downloads
- [cache2](https://npm.io/package/cache2.md) — 1.5K weekly downloads

## Recent versions

- 0.0.4-alpha (latest) — 2019-09-10
- 0.0.3-alpha — 2019-09-10
- 0.0.2-alpha — 2019-09-10
- 0.0.1-alpha — 2019-09-10
- 0.0.1 — 2019-09-08

## README

<img src="/docs/cover.png" />

[![Build Status](https://travis-ci.org/etnadb/etna.svg?branch=master)](https://travis-ci.org/etnadb/etna)
[![Coverage](https://img.shields.io/codecov/c/github/etnadb/etna.svg)](https://codecov.io/gh/etnadb/etna)
[![Open Collective backers and sponsors](https://img.shields.io/opencollective/all/jsmonday)](https://opencollective.com/jsmonday)
[![MIT License](https://img.shields.io/badge/license-MIT-blue)](https://github.com/etnadb/etna/blob/master/LICENSE.md)

<h1 align="center"> WORK IN PROGRESS </h1>

# EQL - Etna Query Language

### Short Demonstration

```etna
SET &string name "Mitch"
# => OK.

SET &int age "24"
# => OK.

GET name
# => "Mitch"

GET age
# => 24

DELETE name
# => OK.

EXIST name
# => false
```

### Types
Etna currently supports six basic types:

| Type    | Alias |
|---------|-------|
| &string | &s    |
| &int    | &i    |
| &float  | &f    |
| &bool   | &b    |
| &null   | &n    |
| &json   | &j    |

### Commands
Etna currently supports four basic commands:

- `SET`
- `GET`
- `DELETE`
- `EXIST`

### Query Language

Set a new value of type string and `name` as its key:
```etna
SET       &string   name  "John"
^         ^         ^      ^
command   type      key    value
```

Get the `name` value:
```etna
GET       name
^         ^
command   key
```

Delete the `name` value:
```etna
DELETE    name
^         ^
command   key
```

Check if the `name` key exists:
```etna
EXIST     name
^         ^
command   key
```

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