ecto_cassandra alternatives and similar packages
Based on the "ORM and Datamapping" category.
Alternatively, view ecto_cassandra alternatives based on common mentions on social networks and blogs.
-
paper_trail
Track and record all the changes in your database with Ecto. Revert back to anytime in history. -
ecto_psql_extras
Ecto PostgreSQL database performance insights. Locks, index usage, buffer cache hit ratios, vacuum stats and more. -
gremlex
DISCONTINUED. Elixir Client for Gremlin (Apache TinkerPop™) [GET https://api.github.com/repos/Revmaker/gremlex: 404 - Not Found // See: https://docs.github.com/rest/repos/repos#get-a-repository]
CodeRabbit: AI Code Reviews for Developers

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of ecto_cassandra or a related project?
README
EctoCassandra
Cassandra Adapter for Ecto (the language integrated query for Elixir)
Example
# In your config/config.exs file
config :my_app, ecto_repos: [Sample.Repo]
config :my_app, Sample.Repo,
adapter: EctoCassandra.Adapter,
keyspace: "ecto_simple",
contact_points: ["localhost"],
replication: [
class: "SimpleStrategy",
replication_factor: 1,
]
# In your application code
defmodule Sample.Repo.Migrations.CreateUser do
use Ecto.Migration
def change do
create table(:users, primary_key: false) do
add :id, :id, partition_key: true
add :age, :integer, clustering_column: true
add :name, :string
add :email, :string
add :password_hash, :string
timestamps()
end
end
end
defmodule Sample.Repo do
use Ecto.Repo, otp_app: :my_app
end
defmodule Sample.User do
use Ecto.Schema
@primary_key false
schema "users" do
field :username, primary_key: true
field :age, :integer
field :name # Defaults to type :string
field :email
field :password_hash
field :password, :string, virtual: true
end
end
defmodule Sample.App do
import Ecto.Query
alias Sample.{Repo, User}
def keyword_query do
Repo.all from u in User,
where: u.username == "john",
select: u.email
end
def pipe_query do
User
|> where([u], u.age > 10)
|> order_by(:age)
|> limit(10)
|> Repo.all
end
def get_by_name do
Repo.get_by(username: "john")
end
end
*Note that all licence references and agreements mentioned in the ecto_cassandra README section above
are relevant to that project's source code only.