Deta is a Clojure library designed to simplify interactions with the Deta Base and Deta Drive. It provides a straightforward way to initialize a service connection and perform operations. This library is ideal for developers looking to integrate Deta Space services functionality into their Clojure applications.
The current focus is on implementing functions for Deta Base, with Deta Drive functionalities yet to be started.
The Deta Base API provides a range of functionalities for data manipulation. The following functions have been implemented:
The remaining functions to be implemented are:
Deta Drive offers functionalities for file storage and manipulation. As of now, work on Deta Drive functionalities has not yet begun. The planned functionalities include:
This project is under continuous development, with the goal of providing a robust and efficient solution for interacting with the Deta Space API in Clojure. Follow the progress and contribute with suggestions or implementations of new functionalities.
To fully understand how to use this software, referring to the comprehensive documentation available at https://adaiasmagdiel.github.io/deta-clojure/.
This library is now available as a dependency. You can add it to your project using Leiningen/Boot by including the following in your project.clj
dependencies:
[com.adaiasmagdiel/deta "0.0.5"]
For more installation methods, such as Clojure CLI/deps.edn
, Gradle
, and Maven
, please refer to the installation section of our documentation.
(def db (base/base "your_collection_key" "your_basename"))
(base/put db {:a 1 :b 2} "item-key")
(base/put db {:c 3 :d 4}) ; The key is automatically generated on the server
(base/insert db {:a 1 :b 2} "item-key")
(base/insert db {:c 3 :d 4}) ; The key is automatically generated on the server
Please refer to the documentation to understand the distinction between "put" and "insert".
(base/get db "item-key")
(base/delete db "item-key")
(base/fetch db) ; Fetch all records
(base/fetch db {:name "Jane Doe"}) ; Fetch only records with name = "Jane Doe"
(base/fetch db {:name "Jane Doe"} {:limit 1 :desc true}) ; Use parameters to modify fetching
For more detailed usage instructions and examples, please refer to the usage section of our documentation.
The library includes a test suite that covers various scenarios. To run the tests, set the DETA_KEY
environment variable with a valid Deta key beforehand.
set DETA_KEY=your_deta_key_here
lein test
export DETA_KEY=your_deta_key_here
lein test
Replace your_deta_key_here
with your actual Deta key.
Contributions are always welcome! Please review the code and send suggestions or pull requests to improve the library.
This project is licensed under the MIT License. See the LICENSE file for details.
For any questions or suggestions, please open an issue on GitHub.
Can you improve this documentation?Edit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close