Lucid — An HTTP Key-Value Store
Lucid is a modern concept of key-value store, which improves the way data is created and consumed by providing a RESTful API.
Getting Started
The first step to begin to use lucid is to download binaries, Lucid is portable you can use as you want, you don’t need to downloads any dependencies.
Go on GitHub releases page, and drop the last binary here.
Initialize Lucid
The init
command will create an initial configuration file in your AppData folder on Windows or in ~/.config
folder on Linux.
$ ./lucid init
Run the Server
When you have a good configuration you can run the server with this command:
$ ./lucid server
Now the server is listening, and the console is like this:
Play with Lucid
We will play with the HTTP API using cURL, you can use Powershell or WSL on Windows by example and for macOS or Linux it’s native.
Create or Update
You need to use PUT
method to create or update data
curl -X PUT -d "hey!" https://localhost:7021/api/kv/hello_world
Read
You also can consume this URL directly in the browser, you need to know that Lucid send the same Content-Type
that it is stored, if you store JPG image using PUT`
you will have a JPG image in the browser.
The Content-Type
is defined by analyzing bytes, you don’t need to specify in the PUT
request.
curl https://localhost:7021/api/kv/hello_world
Delete
And this last query will destroy the data in memory if the specified key exists.
curl -X DELETE https://localhost:7021/api/kv/hello_world
I just will show you how to make CRUD operations, if you want more you can check out our documentation here.
Or Just Watch It
I made a video if you just want to check out without doing anything!
Need a Demonstration?
We have hosted a demo node on Heroku, and he is available here:
If you want to deploy your own node, it’s easy, you just need to go here.
Go further
Lucid has many more commands and features, you can look at our documentation our help us on GitHub, most of them are currently in development, you are welcome to help us!
Using Docker
To runs a node with Docker, you need to create a lucid.yml file locally before.
$ docker pull lucidkv/lucid
$ docker run -v lucid.yml:/etc/lucid/lucid.yml lucidkv/lucid
A demonstration instance is accessible at http://lucid-kv.herokuapp.com (with authentication disabled).
Contribute to Lucid
Lucid is developed by @clintnetwork, @Slals, @CephalonRho, @rigwild and published under the MIT License.
See CONTRIBUTING.md for best practices and instructions on setting up your development environment to work on Lucid.