Siphon is a minimalistic NoSQL database accessed via HTTP.
It consists of two languages - one for designing schemas and one for querying your data - and a HTTP server for creating and using a database.
The data is organised into a key-value store, which makes it easy to create the database and query it.
Here's an example of a schema, a query, and a response:
users: [user]
posts: <int:post>
struct user {
id: int
name: string
pass: string
post_ids: [int]
}
struct post {
id: int
title: string
content: string
likes: uint
}
users[5].friends[name~/^foo/]
{
"id": 5,
"name": "foobar",
"pass": "...",
"post_ids": [
1,
5,
10,
21
]
}
bool
float
, float32
int
, int32
, int16
, int8
uint
, uint32
, uint16
, uint8
regexp
<key:val>
[type]