blob: f55068ee967f3792d0bce06501646a3fb3e292d0 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>Apache Cassandra | Apache Cassandra Documentation</title>
<link rel="stylesheet" href="../assets/css/site.css">
<link rel="schema.dcterms" href="https://purl.org/dc/terms/">
<meta name="dcterms.subject" content="_">
<meta name="dcterms.identifier" content="master">
<meta name="generator" content="Antora 2.3.4">
<link rel="icon" href="../assets/img/favicon.ico" type="image/x-icon">
<script>
const script = document.createElement("script");
const domain = window.location.hostname;
script.type = "text/javascript";
script.src = "https://plausible.cassandra.apache.org/js/plausible.js";
script.setAttribute("data-domain",domain);
script.setAttribute("defer",'true');
script.setAttribute("async",'true');
document.getElementsByTagName("head")[0].appendChild(script);
</script> </head>
<body class="basic ">
<div class="container mx-auto relative">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<meta property="og:type" content="website" />
<meta property="og:url" content="/" />
<meta property="og:site_name" content="Apache Cassandra" />
<header id="top-nav">
<div class="inner relative">
<div class="header-social-icons text-right">
<a href="https://twitter.com/cassandra?lang=en" target="_blank" styles="margin-left: 20px;"><img src="../assets/img/twitter-icon-circle-white.svg" alt="twitter icon" width="24"></a>
<a href="https://www.linkedin.com/company/apache-cassandra/" target="_blank" styles="margin-left: 20px;"><img src="../assets/img/LI-In-Bug.png" alt="linked-in icon" width="24"></a>
<a href="https://www.youtube.com/c/PlanetCassandra" target="_blank" styles="margin-left: 20px;"><img src="../assets/img/youtube-icon.png" alt="youtube icon" width="24"></a>
</div>
<div class="cf">
<div class="logo left"><a href="/"><img src="../assets/img/logo-white-r.png" alt="cassandra logo"></a></div>
<div class="mobile-nav-icon right">
<img class="toggle-icon" src="../assets/img/hamburger-nav.svg">
</div>
<ul class="main-nav nav-links right flex flex-vert-center flex-space-between">
<li>
<a class="nav-link hide-mobile">Get Started</a>
<ul class="sub-menu bg-white">
<li class="pa-micro">
<a href="/_/cassandra-basics.html">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-basics.png" alt="cassandra basics icon">
</div>
<div class="sub-nav-text teal py-small">
Cassandra Basics
</div>
</a>
</li>
<li class="pa-micro">
<a href="/_/quickstart.html">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-rocket.png" alt="cassandra basics icon">
</div>
<div class="sub-nav-text teal py-small">
Quickstart
</div>
</a>
</li>
<li class="pa-micro">
<a href="/_/ecosystem.html">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-ecosystem.png" alt="cassandra basics icon">
</div>
<div class="sub-nav-text teal py-small">
Ecosystem
</div>
</a>
</li>
</ul>
</li>
<li><a class="nav-link" href="/doc/latest/">Documentation</a></li>
<li>
<a class="nav-link" href="/_/community.html">Community</a>
<ul class="sub-menu bg-white">
<li class="pa-micro">
<a href="/_/community.html#code-of-conduct">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-welcome.png" alt="welcome icon">
</div>
<div class="sub-nav-text teal py-small">
Welcome
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/community.html#discussions">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-discussions.png" alt="discussions icon">
</div>
<div class="sub-nav-text teal py-small">
Discussions
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/community.html#project-governance">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-governance.png" alt="Governance icon">
</div>
<div class="sub-nav-text teal py-small">
Governance
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/community.html#how-to-contribute">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-contribute.png" alt="Contribute icon">
</div>
<div class="sub-nav-text teal py-small">
Contribute
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/community.html#meet-the-community">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-community.png" alt="Meet the Community icon">
</div>
<div class="sub-nav-text teal py-small">
Meet the Community
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/cassandra-catalyst-program.html">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-catalyst.png" alt="Catalyst icon">
</div>
<div class="sub-nav-text teal py-small">
Catalyst Program
</div>
</a>
</li>
<li class="pa-micro hide-mobile">
<a href="/_/events.html">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-events.png" alt="Events icon">
</div>
<div class="sub-nav-text teal py-small">
Events
</div>
</a>
</li>
</ul>
</li>
<li>
<a class="nav-link hide-mobile">Learn</a>
<ul class="sub-menu bg-white">
<li class="pa-micro">
<a href="/_/Apache-Cassandra-5.0-Moving-Toward-an-AI-Driven-Future.html">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-basics.png" alt="Basics icon">
</div>
<div class="sub-nav-text teal py-small">
Cassandra 5.0
</div>
</a>
</li>
<li class="pa-micro">
<a href="/_/case-studies.html">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-case-study.png" alt="Case Studies icon">
</div>
<div class="sub-nav-text teal py-small">
Case Studies
</div>
</a>
</li>
<li class="pa-micro">
<a href="/_/resources.html">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-resources.png" alt="Resources icon">
</div>
<div class="sub-nav-text teal py-small">
Resources
</div>
</a>
</li>
<li class="pa-micro">
<a href="/_/blog.html">
<div class="sub-nav-icon">
<img src="../assets/img/sub-menu-blog.png" alt="Blog icon">
</div>
<div class="sub-nav-text teal py-small">
Blog
</div>
</a>
</li>
</ul>
</li>
<li><a class="nav-link btn btn--filled" href="/_/download.html">Download Now</a></li>
</ul>
</div>
</div>
</header>
<div class="hero hero--home grad">
<div class="eye"></div>
<div id="home-content" class="text-center flex flex-center flex-column relative z2 ma-xlarge">
<h1>Third-party projects</h1>
</div>
</div>
<div class="flex-center py-large arrow">
<div class="inner inner--narrow">
<div class="sect1">
<h2 id="third-party-projects"><a class="anchor" href="#third-party-projects"></a>Third-party projects</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="cassandra-as-a-service-cloud-offerings"><a class="anchor" href="#cassandra-as-a-service-cloud-offerings"></a>Cassandra as-a-Service cloud offerings</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://aiven.io/cassandra">Aiven for Apache Cassandra</a>: Aiven for
Apache Cassandra is a fully managed NoSQL database, deployable in the
cloud of your choice. Snap it into your existing workflows with the
click of a button, automate away the mundane tasks, and focus on
building your core apps. Now running Cassandra 3.11.</p>
</li>
<li>
<p><a href="https://aws.amazon.com/keyspaces/">Amazon Keyspaces (for Apache
Cassandra)</a>: Scalable, highly available, and managed Apache
Cassandra–compatible database service.</p>
</li>
<li>
<p><a href="https://astra.datastax.com">DataStax Astra</a>: Cloud-native database
as-a-service built on Apache Cassandra™ complete with a free-tier and
CQL, REST and GraphQL APIs for faster development. Deployable in AWS and
GCP.</p>
</li>
<li>
<p><a href="https://www.instaclustr.com/solutions/managed-apache-cassandra">Instaclustr
Hosted &amp; Managed Apache Cassandra as a Service</a>: Instaclustr provides a
fully managed and SOC 2 certified hosted &amp; managed service for Apache
Cassandra® on AWS, Azure, GCP and IBM Cloud.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="cassandra-installation-tools"><a class="anchor" href="#cassandra-installation-tools"></a>Cassandra installation tools</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://hub.docker.com/_/cassandra">Docker community Cassandra images</a>:
Docker images for Apache Cassandra maintained by the Docker community</p>
</li>
<li>
<p><a href="https://downloads.datastax.com/#desktop">DataStax Desktop</a>:
Cross-platform (Windows, MacOSX, Linux) application that allows
developers to quickly explore Apache Cassandra™ with a few clicks on
their laptop, complete with tutorials and walkthroughs.</p>
</li>
<li>
<p><a href="https://github.com/thelastpickle/tlp-cluster">The Last Pickle
tlp-cluster</a>: tlp-cluster, a tool for launching Cassandra clusters in
AWS (DataStax)</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="cassandra-tools"><a class="anchor" href="#cassandra-tools"></a>Cassandra tools</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://cassandra.link">cassandra.link</a>: Curated site with tools, along
with <a href="https://cassandra.tools">cassandra.tools</a>.</p>
</li>
<li>
<p><a href="https://github.com/criteo/cassandra_exporter">Cassandra Prometheus
Exporter</a>: Standalone application which exports Cassandra metrics
through a prometheus friendly endpoint</p>
</li>
<li>
<p><a href="https://downloads.datastax.com/#bulk-loader">DataStax Bulk Loader</a>:
Easy-to-use command line utility for loading and unloading JSON or CSV
files to/from the database, counting rows in tables and identifying
large partitions.</p>
</li>
<li>
<p><a href="https://github.com/datastax/metric-collector-for-apache-cassandra">DataStax
Metrics Collector for Cassandra</a>: Based on Collectd, aggregates OS and
Cassandra metrics along with diagnostic events to facilitate problem
resolution and remediation</p>
</li>
<li>
<p><a href="https://hackolade.com/nosqldb.html#cassandra">Hackolade</a>: Visual data
modeling tool for Cassandra</p>
</li>
<li>
<p><a href="https://github.com/thelastpickle/cassandra-medusa">The Last Pickle
Medusa</a>: Apache Cassandra Backup and Restore Tool (DataStax)</p>
</li>
<li>
<p><a href="https://github.com/thelastpickle/cassandra-reaper">The Last Pickle
Reaper</a>: Automated repair tool for Apache Cassandra (DataStax)</p>
</li>
<li>
<p><a href="https://github.com/thelastpickle/tlp-stress">The Last Pickle Cassandra
stress tool, tlp-stress</a>: A workload-centric stress tool for Apache
Cassandra. Designed for simplicity, no math degree required. (DataStax)</p>
</li>
<li>
<p><a href="https://github.com/nosqlbench/nosqlbench">NoSQLBench</a>: Pluggable
benchmarking suite for Cassandra and other distributed systems</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="cassandra-kubernetes-operators"><a class="anchor" href="#cassandra-kubernetes-operators"></a>Cassandra Kubernetes operators</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/mesosphere/kudo-cassandra-operator">D2iQ Cassandra
Kudo Operator</a>: The KUDO Cassandra Operator makes it easy to deploy and
manage Apache Cassandra on Kubernetes.</p>
</li>
<li>
<p><a href="https://github.com/datastax/cass-operator">DataStax cass-operator</a>: The
DataStax Kubernetes Operator for Apache Cassandra</p>
</li>
<li>
<p><a href="https://github.com/instaclustr/cassandra-operator">Instaclustr
cassandra-operator</a>: The Cassandra operator manages Cassandra clusters
deployed to Kubernetes and automates tasks related to operating a
Cassandra cluster.</p>
</li>
<li>
<p><a href="https://orange-opensource.github.io/casskop/">Orange CassKop</a>: The
Orange Cassandra operator is a Kubernetes operator to automate
provisioning, management, autoscaling and operations of Apache Cassandra
clusters deployed to K8s.</p>
</li>
<li>
<p><a href="https://github.com/sky-uk/cassandra-operator">Sky Cassandra Operator</a>:
The Sky Cassandra Operator is a Kubernetes operator that manages
Cassandra clusters inside Kubernetes.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="cassandra-management-sidecars"><a class="anchor" href="#cassandra-management-sidecars"></a>Cassandra management sidecars</h3>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/apache/cassandra-sidecar">Apache Cassandra
cassandra-sidecar</a>: Sidecar for the highly scalable Apache Cassandra
database, built as part of the Apache Cassandra project.</p>
</li>
<li>
<p><a href="https://github.com/datastax/management-api-for-apache-cassandra">DataStax
Management API for Apache Cassandra</a>: RESTful / Secure Management
Sidecar for Apache Cassandra</p>
</li>
<li>
<p><a href="https://github.com/datastax/spring-boot">DataStax Spring Boot</a>: Spring
Boot extension</p>
</li>
<li>
<p><a href="https://github.com/instaclustr/cassandra-sidecar">Instaclustr
cassandra-sidecar</a>: This repository is home of a sidecar for Apache
Cassandra database. Sidecar is meant to be run alongside of Cassandra
instance and sidecar talks to Cassandra via JMX.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="developer-frameworks"><a class="anchor" href="#developer-frameworks"></a>Developer Frameworks</h3>
<div class="ulist">
<ul>
<li>
<p><a href="http://r4fek.github.io/django-cassandra-engine/">Django Cassandra
Engine</a>: Cassandra backend for Django Framework that allows you to use
Cqlengine directly in your project.</p>
</li>
<li>
<p><a href="https://express-cassandra.readthedocs.io/en/stable/">Express
Cassandra</a>: Express-Cassandra is a Cassandra ORM/ODM/OGM for NodeJS with
Elassandra &amp; JanusGraph Support.</p>
</li>
<li>
<p><a href="https://quarkus.io/guides/cassandra">Quarkus extension for Apache
Cassandra</a>: An Apache Cassandra&#174; extension for Quarkus. Quarkus is A
Kubernetes Native Java stack tailored for OpenJDK HotSpot and GraalVM,
crafted from the best of breed Java libraries and standards.</p>
</li>
<li>
<p><a href="https://spring.io/projects/spring-data-cassandra">Spring Data
Cassandra</a>: With the power to stay at a high level with annotated POJOs,
or at a low level with high performance data ingestion capabilities, the
Spring Data for Apache Cassandra templates are sure to meet every
application need</p>
</li>
<li>
<p><a href="https://www.testcontainers.org/modules/databases/cassandra/">TestContainers</a>:
Testcontainers is a Java library that supports JUnit tests, providing
lightweight, throwaway instances of common databases, Selenium web
browsers, or anything else that can run in a Docker container.</p>
</li>
</ul>
</div>
</div>
<div class="sect2">
<h3 id="cassandra-connectors"><a class="anchor" href="#cassandra-connectors"></a>Cassandra connectors</h3>
<div class="sect3">
<h4 id="apache-kafka"><a class="anchor" href="#apache-kafka"></a>Apache Kafka</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://www.confluent.io/hub/confluentinc/kafka-connect-cassandra">Confluent
Connect Cassandra</a>: The Confluent Cassandra Sink Connector is used to
move messages from Kafka into Apache Cassandra.</p>
</li>
<li>
<p><a href="https://downloads.datastax.com/#akc">DataStax Sink Connector</a>: The
DataStax Apache Kafka Connector automatically takes records from Kafka
topics and writes them to a DataStax Enterprise or Apache Cassandra™
database. This sink connector is deployed in the Kafka Connect framework
and removes the need to build a custom solution to move data between
these two systems.</p>
</li>
<li>
<p><a href="https://github.com/debezium/debezium-incubator/tree/master/debezium-connector-cassandra">Debezium
Source Connector</a>: This connector is currently in incubating state, and
Cassandra is different from the other Debezium connectors since it is
not implemented on top of the Kafka Connect framework.</p>
</li>
<li>
<p><a href="https://docs.lenses.io/connectors/sink/cassandra.html">Lenses Sink
Connector</a>: The Cassandra Sink allows you to write events from Kafka to
Cassandra. The connector converts the value from the Kafka Connect
SinkRecords to JSON and uses Cassandra’s JSON insert functionality to
insert the rows. The task expects pre-created tables in Cassandra.</p>
</li>
<li>
<p><a href="https://docs.lenses.io/connectors/source/cassandra.html">Lenses Source
Connector</a>: Kafka Connect Cassandra is a Source Connector for reading
data from Cassandra and writing to Kafka.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="apache-spark"><a class="anchor" href="#apache-spark"></a>Apache Spark</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://github.com/datastax/spark-cassandra-connector">DataStax Spark
Cassandra Connector</a>: This library lets you expose Cassandra tables as
Spark RDDs and Datasets/DataFrames, write Spark RDDs and
Datasets/DataFrames to Cassandra tables, and execute arbitrary CQL
queries in your Spark applications.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="apache-flink"><a class="anchor" href="#apache-flink"></a>Apache Flink</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://ci.apache.org/projects/flink/flink-docs-stable/dev/connectors/cassandra.html">Flink
Sink Connector</a>: This connector provides sinks that writes data into a
Apache Cassandra database.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="apache-pulsar"><a class="anchor" href="#apache-pulsar"></a>Apache Pulsar</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://pulsar.apache.org/docs/en/io-quickstart/#connect-pulsar-to-cassandra">Pulsar
Sink Connector</a>: The Pulsar Cassandra Sink connector is used to write
messages to a Cassandra Cluster.</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="professional-support"><a class="anchor" href="#professional-support"></a>Professional Support</h4>
<div class="ulist">
<ul>
<li>
<p><a href="https://luna.datastax.com/">DataStax Luna</a>,
<a href="https://www.datastax.com/services/support/premium-support">DataStax
Premium Support</a>,
<a href="https://www.datastax.com/services/professional-services">DataStax
Professional Services</a></p>
</li>
<li>
<p><a href="https://www.instaclustr.com/services/">Instacluster</a></p>
</li>
<li>
<p><a href="https://opencredo.com/about-us/">Open Credo</a></p>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<footer class="grad grad--two flex-center pb-xlarge">
<div class="inner text-center z2 relative">
<h2 class="white py-small">Get started with Cassandra, fast.</h2>
<a id="footer-cta" href="/_/quickstart.html" class="btn btn--filled ma-medium">Quickstart Guide</a>
</div>
<div class="inner flex flex-distribute-items mt-xlarge z2 relative">
<div class="col-2">
<div id="footer-logo" class="logo logo--footer mb-medium"><img src="../assets/img/logo-white-r.png" alt="Cassandra Logo"></div>
<p>Apache Cassandra<img src="../assets/img/registered.svg" alt="®" style="width:18px;"> powers mission-critical deployments with improved performance and unparalleled levels of scale in the cloud.</p>
<div class="footer-social-icons">
<a href="https://twitter.com/cassandra?lang=en" target="_blank"><img src="../assets/img/twitter-icon-circle-white.svg" alt="twitter icon" width="24"></a>
<a href="https://www.linkedin.com/company/apache-cassandra/" target="_blank"><img src="../assets/img/LI-In-Bug.png" alt="linked-in icon" width="24"></a>
<a href="https://www.youtube.com/c/PlanetCassandra" target="_blank"><img src="../assets/img/youtube-icon.png" alt="youtube icon" width="24"></a>
</div>
</div>
<div class="col-2 flex flex-center">
<ul class="columns-2">
<li class="mb-small"><a href="/">Home</a></li>
<li class="mb-small"><a href="/_/cassandra-basics.html">Cassandra Basics</a></li>
<li class="mb-small"><a href="/_/quickstart.html">Quickstart</a></li>
<li class="mb-small"><a href="/_/ecosystem.html">Ecosystem</a></li>
<li class="mb-small"><a href="/doc/latest/">Documentation</a></li>
<li class="mb-small"><a href="/_/community.html">Community</a></li>
<li class="mb-small"><a href="/_/case-studies.html">Case Studies</a></li>
<li class="mb-small"><a href="/_/resources.html">Resources</a></li>
<li class="mb-small"><a href="/_/blog.html">Blog</a></li>
</ul>
</div>
</div>
</footer>
<div class="lower-footer bg-white pa-medium">
<div class="flex flex-row flex-vert-center">
<div class="pr-medium"><img src="../assets/img//feather-small.png" alt="ASF" width="20"></div>
<div class="pr-medium"><a href="http://www.apache.org/" target="_blank">Foundation</a></div>
<div class="pr-medium"><a href="https://www.apache.org/events/current-event.html" target="_blank">Events</a></div>
<div class="pr-medium"><a href="https://www.apache.org/licenses/" target="_blank">License</a></div>
<div class="pr-medium"><a href="https://www.apache.org/foundation/thanks" target="_blank">Thanks</a></div>
<div class="pr-medium"><a href="https://www.apache.org/security" target="_blank">Security</a></div>
<div class="pr-medium"><a href="https://privacy.apache.org/policies/privacy-policy-public.html" target="_blank">Privacy</a></div>
<div class="pr-medium"><a href="https://www.apache.org/foundation/sponsorship" target="_blank">Sponsorship</a></div>
</div>
<p class="my-medium">© 2009-<script>document.write(new Date().getFullYear())</script> <a href="https://apache.org" target="_blank">The Apache Software Foundation</a> under the terms of the Apache License 2.0. Apache, the Apache feather logo, Apache Cassandra, Cassandra, and the Cassandra logo, are either registered trademarks or trademarks of The Apache Software Foundation.</p>
</div>
<div id="fade" class="hidden"></div>
<div id="modal" class="hidden">
<div id="close-modal" class="cursor-pointer"><svg viewBox="0 0 24 24" width="24" height="24" stroke="currentColor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg></div>
<div id="mod-content" class="vid-mod-content resp-container"></div>
</div>
<script>
jQuery(function(){
var windowW = $(window).width();
$(document)
.on('click','.mobile-nav-icon',function(){
$('.main-nav').fadeIn();
})
.on('click','.main-nav',function(){
if(windowW <= 1000){
$(this).fadeOut();
}
})
.on('click','#version-toggle',function(){
$(this).toggleClass('active');
$(this).next().fadeToggle();
})
.on('click','#mobile-docs-nav-burger', function(){
$(this).toggleClass('active');
$('.docs-nav').toggleClass('active');
});
var url = window.location.pathname;
var isQuickstart = url.includes('quickstart.html');
if(isQuickstart){
var footerCTA = document.getElementById('footer-cta');
footerCTA.innerHTML = 'Get latest updates';
footerCTA.setAttribute('href', '/_/blog.html');
}
});
</script>
</div>
</body>
<script>
jQuery(function(){
jQuery(document)
.on('click','.cassandra-cloud h3',function(){
var el = jQuery(this);
el.toggleClass('active');
el.next().slideToggle();
})
.on('click','.image-expand img', function(){
$(this).clone().appendTo('#mod-content');
$('#fade,#modal,#close-modal').fadeIn();
$('body,html').addClass('no-scroll');
})
.on('click','#fade,#close-modal', function(){
$('#fade,#modal,#close-modal').fadeOut();
$('body,html').removeClass('no-scroll');
$('#mod-content').html('');
});
});
</script>
</html>