LemonEdge API

Your solutions are only as powerful as the personalised nature from which they can be crafted. 

Through unrestricted coding directly into our Open API, you are guaranteed the flexibility and power required in your software. With over 60% of the platform created using its own API, we have developed from the inside out, giving you the confidence you can address your needs through the same API.

All your developed code remains in your complete ownership with full rights and control. Ensuring longer term value, efficiency and longevity.

 

Our core values

Investing time to create, or configure, solutions results in important and valuable IP. Often this time and investment is locked into propriety systems, which keeps your value locked too. We believe in ensuring you have complete ownership of your unique IP, this remains only in your possession and you have full control to develop them as you require.

Ownership

You have full ownership of your solution, and it’s value is retained in your organisation enabling you to use it in the future however you like.

The LemonEdge API is designed to be agnostic of system, providing you the simplicity of development with the portable through minimal changes, into any future applications you choose to use.

We’d love you to stay, if you would like too.

Rights

At LemonEdge we believe your work is not only a valuable asset to yourselves, it distinguishes you in the market and helps make your offering unique. It’s valuable to your competitors, and you should ensure they don’t benefit from your work.

By using the LemonEdge platform you’re ensured full rights to your unique IP solutions. Through the development of your own solutions, rather than customising off the shelf products, this always remains your property. Rather than seeing this generalised for a broader market.

Control

You have full control over every aspect of the LemonEdge platform. We have created a fully flexible environment, which you can adapt as you require whilst benefiting from existing functionality.

 

Control every part of you solutions

Our API has 3 unique elements dedicated to your full control of the platform; Design API, Context API, and UI API – combined you can control every aspect of your personal solution.

 

Design API

The LemonEdge platform is designed to do all the heavy lifting for you; automatically handling the backend database, services, and tools. Through the API you can access all these components at a granular level should you require.

  • The LemonEdge.API. automatically writes your classes.

  • The database is automatically upgraded and maintained as you change your entities in your code.

  • The web service is automatically updating its rest/odata interface to permit full access (while adhering to your permissions) to your entities. You can write any code you desire against the fully functioning web service to interface with your data.

 
 

Context API

A generic API allowing you to manipulate all your entities. You can query them, create, update, and delete all through the same context working transparently whether connecting through the web service or directly to the database.

  • Common context has generic IQuerable implementation to fully query/filter and retrieve sets of your data.

  • Same interface works whether client is connected through Web Service or directly to the database.

  • Tracks inserts, updates and deletes.

  • All your custom business logic can be written to work against this simple interface, and it will run correctly on the client, or back end task servers.

  • Saves run custom validation logic, computations and commits within single isolated transaction ensuring data consistency.

 
 

UI API

Quickly and simply create views, grids, layouts, commands and other elements all within the LemonEdge framework. These assets work seamlessly across all the LemonEdge clients without you having to do anything different for different client apps.

  • 3 clients for users to connect with;

    • Windows Only App

    • Universal App – runs on Windows, Linux, Macs.

    • Console App – admin command line console

    • Web – Coming soon.

       

  • You can still create your own views and hook into the UI API to show custom controls/etc.

 

An Example Development Process

Combined the complete LemonEdge API accelerates your typical development time by orders of magnitude.

The API itself provides a lot more functionality, but the below gives an illustration of comparisons against common tasks when writing code to develop a widget on internal systems. Our API is specifically designed to allow you to concentrate on your unique IP – creating your data structure (the Widget and related data entities), and your algorithms associated with them. The system takes care of everything else including, but not limited to, back end design, web services, front end ui, importing/exporting, permissions, sandboxing, etc.

Taking a simple example of creating a Widget (entity) class, that we’d like to see a grid of widgets, open and edit them, the LemonEdge API provides but is not limited to, the following example.

 

Area

Development

LemonEdge

Traditional

Core Code

Create Widget interface

Manual

Manual

Decorate Widget interface with LemonEdge attributes describing the entity


Manual


Not Required

Add custom validation logic to Widget

Automatic
(From previous step)
Achieved through custom LemonEdge attributes and formula engine

Manual

Create Widget class


Automatic

LemonEdge writes the class for you including IPropertyNotification, Cloning, Tracking and other implementation

Manual

SQL Database

Create/Upgrade Database Tables

Automatic

Manual

Create Tables for Auditing

Automatic

Manual

Create Tables for Permissions

Automatic

Manual

Ensure foreign keys, indexes, etc setup against tables

Automatic

Manual

Create Stored Procedures for Insert, Updates and Deletes

Automatic

Manual

Create functions for accessing data taking account of permissions, auditing and sandboxing

Automatic

Manual

Database Access Code

Update DB Contexts to be aware of Widgets

Automatic

Manual

Update DB Contexts to work with permissions, auditing and sandboxes for Widgets

Automatic

Manual

Web Service Code

Add Widgets Controller logic

Automatic

Manual

Add any permissions, validations, to controller for widgets

Automatic

Manual

Core Code

Enable Widget to be queried by query tools

Automatic

Manual

Integrate Widgets into core importing/exporting routines

Automatic

Manual

Creating an algorithm using our widgets that processes them and makes changes to them or other classes

Manual
Same as traditional approach except algorithm runs against our API context

Manual

+ Committing results of algorithm, validating changes, checking permissions, ensuring all commits as single transaction, accounting for changes made by other users at same time, etc

Automatic

Manual

+ Taking algorithm and running it separately as a task instead of on user’s client machine

Automatic

Manual

Upgrade Code

Custom Upgrades, and Integrating Widget buttons to standard menu

Manual
Quick and easy through our upgrade API interfaces

Manual
Proprietary

Client Code

Create a Grid of Widgets

Manual
Quick and easy through our grid view, simply list properties to appear as columns - Done for all client apps at once

Manual
Requires UI code

+ Sorting, filtering, searching, paging, multi-select, bulk update, opening, deleting, permissions, etc for grid logic with Widgets

Automatic

Manual

+ Ensuring the grid works on different platforms; Windows, Linux, Macs, Web, etc

Automatic

Manual

Create a view for a single Widget

Manual
Quick and easy through our single view API, simply list properties to appear as controls – Done for all client apps at once

Manual
Requires UI code

+ lookup controls, formatting, permissions, wrapping, stacking, grid display, etc for view logic with Widgets

Automatic

Manual

+ Ensuring the view works on different platforms; Windows, Linux, Macs, Web, etc

Automatic

Manual

Creating buttons/commands for specific user actions

Manual
Quick and easy using our command API, automatically displays buttons appropriately throughout UI, don’t need any specific UI code

Manual
Requires UI code

Create specific view for specific platform. i.e. custom ui view of widgets for Windows platform

Manual

Requires UI code
Can still hook into our API

Manual
Requires UI code

1

Comments

1 comment
  • Great overview

    0

Please sign in to leave a comment.

Didn't find what you were looking for?

New post