Skip to content

Express Eval

The fastest way to explore API Logic Server - with no install - is to follow this guide to create, explore and customize a project using Codespaces.

What is API Logic Server

API Logic Server creates customizable database web app projects:

  • Creation is Instant: create executable projects from your database, with a single command. Projects are Highly Functional, providing:

    • API: an endpoint for each table, with filtering, sorting, pagination and related data access

    • Admin UI: multi-page / multi-table apps, with page navigations, automatic joins and declarative hide/show

  • Projects are Customizable, using your IDE: such as VSCode, PyCharm, etc, for familiar edit/debug services

  • Business Logic Automation: using unique spreadsheet-like rules, extensible with Python 🏆

Follow the steps below to be up and running in about a minute - no install, no configuration. You can run the created project to explore its functionality, and how to customize it in VSCode.

 

Why Does It Matter: Faster, Simpler, Modern Architecture
Frameworks are too slow, Low Code is not dev-friendly

We looked at approaches for building database systems:

  • Frameworks: Frameworks like Flask or Django enable you to build a single endpoint or Hello World page, but a multi-endpoint API and multi-page application would take weeks or more.

  • Low Code Tools: these are great for building great UIs, but

    • Want a multi-page app, instantly -- no layout required each screen
    • Want to preserve standard dev tools (VSCode, PyCharm, git, etc) - propietary IDEs are not dev-friendly

And neither provides an answer for backend business logic (it's nearly half the effort).

API Logic Server - dev-friendly low-code automation

API Logic Server is a low-code, developer-friendly approach that leverages automation to dramatically improve web app development:

  • Automation makes it faster: moments, instead of weeks or months. Unblock UI Dev, and engage business users - early - to reduce misunderstandings. Customize with standard IDEs.

  • Automation makes it simpler: this reduces the risk of architectural errors, e.g., APIs without pagination.

  • Automation ensures a modern software architecture: container-ready, API-based, with shared logic over UIs and APIs (no more logic in UI controllers), in maintainable models.

 

1. Open in Codespaces

No install is required - this runs in the cloud, via your Browser, courtesy Codespaces. Use your existing GitHub account (no signup is required), and:

  1. Click here to open the Create Codespace page.

  2. Configure as desired, and click Create codespace.

This process takes about a minute. Wait until you see the port created.

What Is Happening

You will now see the template project - open in VSCode, in the Browser. But that's just what you see...

Behind the scenes, Codespaces has requisitioned a cloud machine, and loaded the template - with a complete development environment - Python, your dependencies, git, etc.

You are attached to this machine in your Browser, running VSCode.

These instructions are now visible in VS Code, to minimize window switching.

🏆 Pretty remarkable.

Verify it worked

VSCode will open in your Browser, and the project will perform various initialization tasks. After about 1 minute, verify as follows:

  1. Port is created
  2. Port made public
  3. readme opened, showing next step

These instructions will continue in Codespaces in the readme.md (double-click it if it does not open automatically).

 

2. Create a project

Wait a bit for initialization to complete, then paste this into the Terminal window (lower right):

ApiLogicServer create --project_name=./ --db_url=

When prompted, do not rebuild the container.

What Just Happened

This is not a coded application.

The system examined your database (here, the default), and created an executable project:

  • API - an endpoint for each table, with full CRUD services, filtering, sorting, pagination and related data access

  • Admin UI - multi-page / multi-table apps, with page navigations and automatic joins

Projects are Customizable, using your IDE: the Project Explorer shows the project structure. Use the code editor to customize your project, and the debugger to debug it.

Business Logic is Automated: use unique spreadsheet-like rules to declare multi-table derivations and constraints - 40X more concise than code. Extend logic with Python.

Using your own database

In this case, we used a default Customers/Orders database. To use your own database, provide the db_url like this.

 

3. Start Server, Admin App

The project is ready to run.

Use the prebuilt Run Configuration to start the server, and the prebuilt Port to start the web app.

Show Me How

As shown below:

  1. Use the default Run Configuration to start the server, and

  2. Click Ports > Globe to start the web app.

 

4. Explore the Tutorial

Open the Tutorial to explore the sample project.

Tutorial Overview

The Tutorial will enable you to explore 2 key aspects:

  • Initial Automation - API and UI creation are automated from the data model. So, later, you'd see this level of automation for your own databases.

  • Customization and Debugging - this sample also includes customizations for extending the API and declaring logic, and how to use VSCode to debug these. The Tutorial will clearly identify such pre-built customizations.

 

Extensive product documentation is available here - checkout the FAQs.

 

API Logic Server Background

Motivation

We looked at approaches for building database systems:


Frameworks

Frameworks like Flask or Django enable you to build a single endpoint or Hello World page, but a multi-endpoint API and multi-page application would take weeks or more.


Low Code Tools

These are great for building great UIs, but

  • Want a multi-page app -- without requiring detail layout for each screen
  • Want to preserve standard dev tools - VSCode, PyCharm, git, etc
  • Need an answer for backend logic (it's nearly half the effort)

 

Our Approach: Instant, Standards-based Customization, Logic Automation

API Logic Server is an open source Python project. It runs as a standard Python (pip) install, or under Docker. It consists of:

  • a set of runtimes (api, user interface, data access) for project execution, plus

  • a CLI (Command Language Interface) to create executable projects with a single command

Then,

  • Customize your projects in standard IDEs such as VSCode or PyCharm

  • Declare multi-table derivation and constraint logic using spreadsheet-like rules

    • 🏆 40X more concise than code
    • Extend with Python

💡 API Logic Server reads your schema, and creates an executable, customizable project.