Aista – Magic Cloud – Generate a CRUD app in seconds

Categories
Aista Magic

Hyper IDE, a Web based IDE

Accessing your IDE over the web has huge advantages, such as for instance being able to edit your code from …

Hyper IDE a Web based IDE – Aista

Accessing your IDE over the web has huge advantages, such as for instance being able to edit your code from
your phone or tablet if you’re in a tight spot and need to edit code and you don’t have access to your development
machine. Below is a screenshot of Hyper IDE.

Hyper IDE screenshot

Where Hyper IDE truly shines though is where it creates code automatically for you, wrapping your existing database
into HTTP CRUD endpoints, by simply clicking a button. Below is a screenshot of this process. The process is really
simple; Choose a database, apply authorisation settings, configure the crudification process, and click a button.
Two seconds later you’ve got thousands of lines of code automatically generated for you, wrapping
every single CRUD operation into an HTTP endpoint for you. The process is 100% automatic, but still allows you
to apply a lot of different configuration overrides, such as whether or not to publish SignalR messages as
your write endpoints are invoked, log deletion of items, create joins towards referenced tables, etc, etc, etc.

Hyper IDE a Web based IDE – Aista

Crudifying your database

Hyper IDE also creates a frontend automatically for you through a similar process.

Create HTTP endpoints using SQL

Hyper IDE a Web based IDE – Aista

Another one of my favourite features with Hyper IDE is its ability to automatically wrap your SQL into an HTTP endpoint,
where you supply some SQL, authorisation settings, a URL, for then to click a button – At which point Hyper IDE
automatically wraps your SQL into a secure HTTP endpoint, allowing you to immediately consume the endpoint from
for instance your frontend Angular or React code. This process also allows you to create parameters for your
endpoint that you can reference inside of your SQL. Below is a screenshot.

Creating HTTP endpoints with SQL

The integrated SQL editor also gives you syntax highlighting and autocomplete on tables and columns.

Invoking your HTTP endpoints from your IDE

When you no longer separate your runtime environment from your development environment, some really interesting things becomes
possible. One of my favourites here is the ability to immediately execute your HTTP endpoints, without ever having
to leave your IDE. When you’ve edited your code, you can save your file, click the “Invoke” button, and immediately
test your code without ever leaving your IDE. Below is a screenshot.

Invoking your HTTP endpoint

The above feature gives you instant feedback on issues, resulting in a much faster development process, where it becomes
much easier to track down and fix bugs. Think “Postman on steroids” here to understand the concept. Watch the video
below for a demonstration of how Hyper IDE works.

Hyper IDE a Web based IDE – Aista

Macros

Hyper IDE and Magic of course is about automation, automation, and automation. The idea is to automatically generate as much
of your code as possible, without requiring human interference what so ever. One of its expressions is Hyper IDE’s macro
support. A macro is basically a micro process that somehow modifies, and/or creates code for you automatically. This is
only possible due to Hyperlambda’s structure, allowing you to parametrise any snippet of Hyperlambda dynamically, for then
to execute your snippet with your arguments. To understand the idea realise that the following screenshot creates an upload
file HTTP endpoint for you automatically. All you have to do is to choose its name/URL, what module it should be associated
with, and who’s allowed to invoke it.

Macros in Hyper IDE

After having clicked the “Execute” button above your module immediately has an upload file endpoint, you can consume
instantly from your frontend code somehow to allow for uploading files and images to your server. Hyper IDE contains many similar
macros for documenting your code, generating download file endpoints, ensuring your module’s database exists, etc, etc, etc.
Everything is about increasing developer productivity while eliminating bugs by having the computer generate your code
automatically.

Instant DevOps

The idea of merging your runtime environment and your development environment results in something we refer to as
“instant DevOps”. With traditional DevOps you typically have to wait for some pipeline to finish its job, deployment
processes to do its job, and compilation to occur. With “Instant DevOps” this is no longer the case, since you edit
your file, save it, and immediately test your code withing seconds. This results in a shorter amount of time between
the point where you potentially introduce a bug, and the point where you experience the bug. Since we know for a fact
that the amount of resources required to fix a bug increases exponentially with the amount of time before you find the
bug, this results in an instant feedback loop, making it much easier for you to find bugs than if you were using a
traditional DevOps process.

Keyboard shortcuts

If your code editor has focus you can use the following keyboard shortcuts.

  • [FN+CONTROL+SPACE] on OSX or [CTRL+SPACE] on Window – Toggle autocomplete
  • [Alt+M] – Toggle maximised code mode
  • [Alt+S] – Saves the active file
  • [Alt+D] – Deletes the active file
  • [Alt+C] – Close active file
  • [Alt+R] – Rename active file

However, we are expanding upon our list of keyboard shortcuts. Click the “Shortkeys” button to see the complete list
of keyboard shortcuts Hyper IDE supports.