Skip to content

Latest commit

 

History

History
318 lines (304 loc) · 13.5 KB

index.md

File metadata and controls

318 lines (304 loc) · 13.5 KB
layout
default

Model driven {json:api} & GraphQL web services for CRUD and Analytics.

Get Started
Elide Illustration
Elide Logo

Elide is a Java library that enables you to stand up JSON API or GraphQL web services in 4 simple steps.


How to use it

1. Define a model

Define a JPA annotated model including relationships to other models using Java, Kotlin, Groovy, and other JVM languages.

Editor: Model

2. Secure It

Control access to fields and entities through a declarative, intuitive permission syntax.

Editor: Security

3. Expose It

Make instances of your new model accessible through a top level collection or restrict access only through relationships to other models

Editor: Expose

4. Deploy & Query

And thats it - you are ready to deploy and query your data with JSON or GraphQL requests.

Query

1. Define a model

Define an analytic model including tables, measures, dimensions, and joins with a friendly HJSON configuration language.

Editor: Model

2. Secure It

Control access to fields and entities through a declarative, intuitive permission syntax.

Editor: Security

3. Connect It

Connect your models to one or more data sources.

Editor: Expose

4. Deploy & Query

And thats it - you are ready to deploy and query your data with JSON or GraphQL requests.

Query

Want to learn more?

Documentation

Or see our features below

Features
Features: Production Quality

Production Quality

Quickly build and deploy production quality web services that expose your data as a service. Elide APIs support complex filtering rules, sorting, pagination, subscriptions, and text search.

Features: Production Quality
Features: Security Comes Standard

Security Comes Standard

Controlling access to your data is as simple as defining your rules and annotating your models.

Features: Mobile Friendly

Mobile Friendly

Fetch entire object graphs in a single round trip. Subscribe to changes in your data model in realtime. Only requested elements of the data model are returned.

Features: Mobile Friendly
Features: Single Atomic Request

Single Atomic Request

Elide supports multiple data model mutations in a single request in either JSON-API or GraphQL. Create objects, add them to relationships, modify or delete together in a single atomic request.

<div class="feature row align-items-center">
  <div class="col-sm text-center text-sm-right d-block d-sm-none">
    <img src="assets/images/features/analytics-icon.png" class="img-fluid" alt="Features: Analytic Queries">
  </div>
  <div class="col-sm my-3 my-sm-0">
    <h4>Analytic Queries</h4>
    <p>Elide supports analytic queries against models crafted with its powerful semantic layer.  Elide APIs work natively with <a href="https://yavin.dev">Yavin</a> to visualize, explore, and report on your data.</p>
  </div>
  <div class="col-sm text-right d-none d-sm-block">
    <img src="assets/images/features/analytics-icon.png" class="img-fluid" alt="Features: Analytic Queries">
  </div>
</div>


<div class="feature row align-items-center elbow">
  <div class="elbow-right"></div>
  <div class="elbow-center"></div>
  <div class="elbow-left"></div>
</div>
<div class="feature row align-items-center">
  <div class="col-sm">
    <img src="assets/images/features/globe-icon.png" class="img-fluid" alt="Features: Open API">
  </div>
  <div class="col-sm my-3 my-sm-0">
    <h4>Open API</h4>
    <p>Explore, understand, and compose queries against your Elide API through generated <a>Swagger</a> documentation or GraphQL schema.</p>
  </div>
</div>
<div class="feature row align-items-center elbow">
  <div class="elbow-left"></div>
  <div class="elbow-center"></div>
  <div class="elbow-right"></div>
</div>
<div class="feature row align-items-center">
  <div class="col-sm text-center text-sm-right d-block d-sm-none">
    <img src="assets/images/features/customize-icon.png" class="img-fluid" alt="Features: Customize">
  </div>
  <div class="col-sm my-3 my-sm-0">
    <h4>Customize</h4>
    <p>Customize the behavior of data model operations with computed attributes, data validation annotations, and request lifecycle hooks.</p>
  </div>
  <div class="col-sm text-right d-none d-sm-block">
    <img src="assets/images/features/customize-icon.png" class="img-fluid" alt="Features: Customize">
  </div>
</div>
<div class="feature row align-items-center elbow">
  <div class="elbow-right"></div>
  <div class="elbow-center"></div>
  <div class="elbow-left"></div>
</div>

<div class="feature row align-items-center">
  <div class="col-sm">
    <img src="assets/images/features/annotation-icon.png" class="img-fluid" alt="Features: Storage Agnostic">
  </div>
  <div class="col-sm my-3 my-sm-0">
    <h4>Storage Agnostic</h4>
    <p>Elide is agnostic to your particular persistence strategy. Use an ORM or provide your own implementation of a data store.</p>
  </div>
</div>

<div class="feature row align-items-center elbow">
  <div class="elbow-left"></div>
  <div class="elbow-center"></div>
  <div class="elbow-right"></div>
</div>

<div class="feature row align-items-center">
  <div class="col-sm text-center text-sm-right d-block d-sm-none">
    <img src="assets/images/features/open-source-icon.png" class="img-fluid" alt="Features: Open Source">
  </div>
  <div class="col-sm my-3 my-sm-0">
    <h4>Open Source</h4>
    <p>Elide is 100% open source and available on <a href="https://github.com/yahoo/elide">Github</a>. Released under the commercial-friendly <a href="/pages/license.html">Apache License, Version 2.0</a>.</p>
  </div>
  <div class="col-sm text-right d-none d-sm-block">
    <img src="assets/images/features/open-source-icon.png" class="img-fluid" alt="Features: Open Source">
  </div>
</div>

Opinionated APIs for web & mobile

Improve the velocity and quality of your team's work.

Get Started