libsql VS StorX

Compare libsql vs StorX and see what are their differences.

libsql

libSQL is a fork of SQLite that is both Open Source, and Open Contributions. (by tursodatabase)

StorX

PHP library for flat-file data storage (by aaviator42)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
libsql StorX
23 5
7,782 14
5.6% -
9.9 10.0
5 days ago about 2 years ago
C PHP
MIT License GNU Affero General Public License v3.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

libsql

Posts with mentions or reviews of libsql. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-30.
  • Show HN: Roast my SQLite encryption at-rest
    9 projects | news.ycombinator.com | 30 Apr 2024
    > PS: I've got nothing against Turso, or libSQL. In fact I spent the last year perusing their virtual WAL API. The problem is that I found no documentation, nor any useful open source implementations of it. If there any I'd be very interested. So, thus far, I also don't have anything that drives towards libSQL.

    Hey, this is v and I am an engineer at Turso. We do have some documentation and an example implementation of Virtual WAL

    docs: https://github.com/tursodatabase/libsql/blob/ef44612/libsql-...

    example: https://github.com/tursodatabase/libsql/blob/ef44612/libsql-...

    for an open source implementation, you may check how Bottomless works. Bottomless is another project which does back up like litestream and it internally implements a Virtual WAL.

    Bottomless - https://github.com/tursodatabase/libsql/tree/main/bottomless

    I am sure we can improve our docs, make it more discover-able and easy to find. I am open to feedback and suggestions!

  • 11 Planetscale alternatives with free tiers
    8 projects | dev.to | 11 Apr 2024
    Astro DB is powered by LibSQL, an open source fork of SQLite that was created by Turso. You can use Astro DB's drop-in database to build features like blogs, comment functionality, forums, feedback systems, and user authentication.
  • "If this one guy got hit by a bus, the software would fall apart."
    1 project | news.ycombinator.com | 6 Apr 2024
    sqlite already had an active community fork started by Turso called libsql. They are fixing longstanding API gaps the upstream team isn’t interested in supporting. For example, they added a native write-ahead log API, so you can plug directly into the WAL for streaming replication. This is possible-ish with upstream sqlite + LiteFs but litefs has to implement a whole FUSE file system and can’t run on Mac for that reason.

    It’s more risky to run libsql because new features mean new bugs, but it seems worth it to me.

    Libsql: https://github.com/tursodatabase/libsql

  • Sqld – A Server Mode for LibSQL
    1 project | news.ycombinator.com | 16 Jan 2024
  • Show HN: My Go SQLite driver did poorly on a benchmark, so I fixed it
    11 projects | news.ycombinator.com | 14 Dec 2023
    A bit of a tangent but for those who’d like to use SQLite for a backend, running it as a separate daemon could be an interesting choice, which would also remove there need of Cgo for the build and maybe make things like separate background job processes easier to accomplish. See [1], [2].

    —-

    1: https://github.com/tursodatabase/libsql/tree/main/libsql-ser...

    2: https://news.ycombinator.com/item?id=38602175

  • LibSQL, a fork of SQLite accepting third-party contributions
    1 project | news.ycombinator.com | 13 Dec 2023
  • FLaNK Stack Weekly for 14 Aug 2023
    32 projects | dev.to | 14 Aug 2023
  • SQLite builds for WASI since 3.41.0
    5 projects | news.ycombinator.com | 24 May 2023
    https://www.sqlite.org/copyright.html

    To summarize, instead of using one of the OSS licenses, the copyright holders simply declare the source to be in the public domain. In order to preserve that status they don't accept patches unless you submit some signed document that you agree with that.

    To make things more complicated, they also use their a relatively niche version management system instead of git. Which would complicate making contributions (if they accepted them).

    There's a popular fork that fixes all of these issues: https://github.com/libsql/libsql It is MIT licensed, on Github, and open for contributions.

    Kind of a weird legal situation for a popular project like this that so many people depend on to have. Not judging; but it is odd. Seems like a lot of wasted efforts between users, would be contributors, and the people that forked this thing to address all that.

  • SQLite is not a toy database
    6 projects | /r/programming | 28 Apr 2023
    You could try making feature requests for https://github.com/libsql/libsql , which is a community fork of SQLite that aims to speed-up the development of long-wanted features.
  • Get started with libSQL, a next-gen fork of SQLite
    3 projects | dev.to | 6 Apr 2023
    For a comprehensive view, check out the issues list for libSQL core and sqld. But mostly, I want libSQL to be a home for all builders who believe there is room to take a lean, mean, and SQLite-compatible embedded database to new heights. I’d love to see your contribution!

StorX

Posts with mentions or reviews of StorX. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-10.
  • PHP in 2024
    3 projects | news.ycombinator.com | 10 Apr 2024
    Apparently it is still common practice to have such "if bla is set, when do blub" everywhere in ones code? No functions with decorators or a similar or alternative concept? I would think there should be some kind of easy to use mechanism in place, that tends to avoid forgetting these ifs.

    There are ... 60 lines of global logic, that is not encapsulated in any function or so?

    Some of the functions are quite long. But I think mostly because they render out HTML.

    At line 107 with the procedure printHeader starting, what I call PHP nightmare starts:

    Switching back and forth between PHP, HTML and HTML with integrated JS (!!!) and CSS. All of course without syntax highlighting, but that is a minor issue. The major issue is treating HTML and JS and CSS as mere strings, instead of structured data, and the very bad readability of having procedures suddenly "end" and spit out some wild HTML, then suddenly continuing again, because some server side logic/decision is required at some place in that stream of unstructured data, whether some part is to be included or not, then the stream continues and then at some point one needs to actually check, that one did not forget to truly end the procedure. This has some of the worst readability. Maybe C code with bit magic is worse.

    One can find this kind of approach in many, if not most, Wordpress plugins. What's more is, that this is also terrible for writing tests. The procedures do not return a value to check against. All is a side effect. Perhaps there is some PHP library that manipulates the PHP system, so that one can at least do string comparisons on the side effects. Like mocking, basically. But still terrible for testing.

    For a comparison of how it should be done instead, check any templating engine, that at least separates template files from PHP code. Better, checkout SXML libraries, that treat HTML as structured data, a tree that can be traversed and pattern matched against, without pulling out arcane string manipulations or regular expressions. And then consider how one could write tests based on such structured data.

    If this "HTML is a string, even on the server side before sending it" kind of approach is how a language treats HTML, then the language is not suitable to be directly used for HTML templating, without any additional library. This alone has caused uncountable security issues in so many projects.

    I realize, that this is probably kind of a "one off script" and may not reflect other kinds of PHP code.

    I did all of those things myself, years ago. And when I already had moved away from such an approach, I had to maintain a project, that was written this way. It had no tests of course. No fun. It has not that much to do with you personally being a good dev or not. I think it has to do with the ecosystem encouraging you to do these things. Outputting HTML like that should be declared illegal and should be impossible.

    https://github.com/aaviator42/StorX/blob/main/StorX.php in comparison looks much better. It seems it does not output things directly. Everything seems wrapped nicely into methods. One obvious footgun seems to be another global state thing, that I really hope is not a thing in PHP itself:

        const THROW_EXCEPTIONS = TRUE;
  • Why you should probably be using SQLite
    8 projects | news.ycombinator.com | 27 Oct 2023
    I'm a huge fan of SQLite! My org's apps use it heavily, often via this simple key-value interface built on sqlite: https://github.com/aaviator42/StorX

    Handles tens of thousands of requests a day very smoothly! :)

  • Show HN: My Single-File Python Script I Used to Replace Splunk in My Startup
    6 projects | news.ycombinator.com | 21 Sep 2023
    My org's apps heavily use this simple key-value interface built on sqlite: https://github.com/aaviator42/StorX

    There's also a bunch of other purpose-built tiny utilities on that GitHub account.

  • SQLite-based databases on the Postgres protocol? Yes we can
    11 projects | news.ycombinator.com | 25 Jan 2023
    I wrote a small PHP library that gives you a key-value storage interface to SQlite files: https://github.com/aaviator42/StorX

    I've been dogfooding for a while by using it in my side projects.

    And there's a basic API too, to use it over a network: https://github.com/aaviator42/StorX-API

  • Soul – A SQLite RESTful Server
    10 projects | news.ycombinator.com | 29 Oct 2022
    This is probably ready to be used in production by others, but I wrote a library that gives you a key-value storage interface to SQlite files: https://github.com/aaviator42/StorX

    And there's an API too, to use it over a network: https://github.com/aaviator42/StorX-API

What are some alternatives?

When comparing libsql and StorX you can also consider the following projects:

rqlite - The lightweight, distributed relational database built on SQLite.

StorX-API - A REST API for StorX

litellm - Call all LLM APIs using the OpenAI format. Use Bedrock, Azure, OpenAI, Cohere, Anthropic, Ollama, Sagemaker, HuggingFace, Replicate (100+ LLMs)

sqld - LibSQL with extended capabilities like HTTP protocol, replication, and more.

jdbc-connector-for-apache-kafka - Aiven's JDBC Sink and Source Connectors for Apache Kafka®

configinator

stream-sqlite - Python function to extract rows from a SQLite file while iterating over its bytes

zfs-autosnap - Minimal viable ZFS autosnapshot tool

roapi - Create full-fledged APIs for slowly moving datasets without writing a single line of code.

bottomless