Quartex

is creating Software development tools and a unique cloud platform

Select a membership level

Supporter

$15
per month
You love the products but you are not a developer yourself. This is a general support tier for people who just want to show apprechiation and support.
  • Public articles

Hobbist

$25
per month
If you love the project and want to help make it a reality without getting involved, then this is the tier for you. You get regular binaries of Quartex Pascal and Amibian.js, but without access to the source-code.
  • Regular Binaries and updates
  • Public articles
  • Community articles

Junior Developer

$50
per month
If you want weekly binary updates, all the news, access to the Quartex Developer Group on Facebook and direct access to the developer, then this is the tier for you. This tier covers all published articles for both Quartex Pascal and Amibian.js, and you get your name in the IDE and desktop about box!
  • Regular Binaries and updates
  • Community articles
  • Quartex Developer community access
  • General Support

23

patrons

About Quartex

This is the home of Quartex Media Desktop and Quartex Pascal, two very exciting projects that have been in development for 3 years now.

Quartex Media Desktop

Quartex Media Desktop is a full desktop for the browser, which includes a fully working filesystem over websocket, multi-user support, secure application models, a cluster capable message system (Ragnarok) and the ability to run both JavaScript, WASM, LDEF Bytecode programs as well as a host of emulated systems.
Since the desktop and its's sub system is implemented using stock, off-the-shelves web technology, it is literally a desktop system that will run on anything! It is the perfect ecosystem for creating large and complex web applications, router systems, kiosk systems, signage systems, educational platforms and much, much more.

The desktop is powered by 5 node.js system services that provides all the back-end power the desktop needs. It is in other words, a complete, hardware agnostic desktop system that uses HTML5/JS/WASM to deliver the exact same experience and underlying APIs as you would expect from a normal desktop. You might say that Quartex Media Desktop does for the browser, what Windows has done for the PC.

Full desktop, not a mock system

This is the unique part, since most "web desktop" projects out there are in fact just paper thin. They look like the real deal, but it's all superficial. Quartex Media Desktop delivers the full monty, with everything from filesystem to windowing manager and process isolation - all implemented in Quartex Pascal and compiled to JavaScript.

The distinction between web technology and a traditional desktop begins to blue when you run the desktop on a thin Linux base, booting into the desktop via Chrome in Kiosk mode (without the traditional Linux desktop).

Cluster architecture

The node.js services that powers the desktop system has been designed to run with zero-config, meaning that as long as the services are connected to the same network, router or hub, they find each other. All communication between the desktop and the individual services happes via the JSON based Ragnarok protocol (async messages) over low-latency websocket connections.

This architecture means that each service can be hosted on different SBC's (single board computers) and take full advantage of available threading and processing capabilities.

Agents, ghost in the shell

One of the really cool features of clustered computing, is the notion of agents. An agent is a small program that the desktop generates in order to complete a task, and that program is physically shipped to one of the computers in the cluster which has free processing power. Once the program has arrived on the computer board in question it will do it's work, send the result back to the management service, then cease to exist.

An example of a task where agents are extremely handy is media encoding. When using agents the code management service can ship agents to several computers in the cluster, which each process a small part of the whole file. So instead of throwing 2 or 3 cpu cores on a problem, we can throw 10, 20 or even 30 (depending on the size of the cluster naturally).

Quartex Pascal

In order to write such a project we need a compiler that is capable of such a massive undertaking. Since I am the original developer of Smart Mobile Studio, a development system that compiles Object Pascal to JavaScript, the initial prototype of the desktop system was written using that language and toolkit.
However, a project of this scope and complexity soon exhausted that development system, quite simply because it was never designed for something of this magnitude (Smart was created to simplify HTML5/JS based mobile application development, not full cluster based desktop systems).
In the end I simply had to abandon the use of Smart Mobile Studio. There was no way to finish the project without creating a completely new development system from scratch, which meant compiler, runtime-library, IDE, package support and widget library. We have spent nearly a year on this undertaking, and we are close to completing the first release.
So what is Quartex Pascal? It is a complete Object Pascal code editor, form designer, framework and compiler system that targets JavaScript. You write Object Pascal (like Delphi or Freepascal), and it converts your code into cutting edge JavaScript.

Quartex Pascal (QTX) covers both Node.js (server development) and HTML5 (front-end development) from the same IDE. It ships with a rich, well planned and powerful class framework (RTL), making it easy to write both desktop, mobile and web applications - as well as your own widgets and component packages.
The generated code is highly compatible with common JavaScript standards, and the generated code can easily be used by JavaScript developers. Object Pascal delivers full inheritance based on a VMT (virtual method table), proper classical OOP, partial classes, abstract and virtual members, RTTI and much, much more. The language is 90% compatible with Embarcadero Delphi, and it reduces work that would otherwise take months and weeks to finish in traditional JavaScript, to weeks and days.

Perfect for Education, hobbyist developers and professionals alike

Quartex Pascal will be free to use for non-profit and open-source development. Students can likewise use QTX free of charge.  Educational institutions (schools and universities) can use the QTX binary distribution for teaching free of charge, providing they are backers of the project here on Patreon.

Non-backers that wish to use Quartex Pascal for commercial development must first obtain a Quartex Developer License. The binary distribution of Quartex Pascal is released under a classical shareware license in order to retain copy and distribution rights from being abused. Quartex Pascal and Quartex Media Desktop will be managed by a registered non-profit organization here in Norway, which sole aim is to promote Object Pascal and software development. Any money generated from Quartex Development Licenses (non-backers) will be placed in an account managed by the organization, and development hours and advances are allocated from that. Here our longest backer has been asked to be a part of the board, Mr. Kenneth McMillion (USA).

Since the purpose of QTX is to teach Object Pascal and to simplify web, mobile and service development - the commercial development license for non-backers will never exceed €300. I feel that modern development tools operate with pricing policies that are outrageous (Embarcadero Delphi in particular) which makes it extremely difficult for students and low-income individuals to learn the skills they need. In some cases the pricing of development tools obstruct entire demographics from competing on equal footing.

As such, regardless of how big and mighty Quartex Pascal becomes, a single commercial license will never exceed $300.

Benefits for backers

Patreon backers are the ones that walk away with the best deal on Quartex Pascal:
  • Backers enjoy weekly binary updates (builds) and can follow the development up close, ask questions, give suggestions and play and active role in the evolution of the product.
  •  Backers have full access to the source-code for the entire product, including the IDE, secondary tools and the RTL
  • Backers are exempt from ever having to pay a development license for commercial work
  • Backers are considered co-creators and co-owners, as such they can create their own variations of the IDE and RTL, providing they respect common rules:
    • Non-compete: It is not allowed to sell or distribute Quartex Pascal
    • Non-Rebrand: Taking the Quartex Pascal codebase and re-branding it under another name, or using code originating from QTX is not allowed
    • Non-distribute: It is not allowed to distribute your own variation of QTX without written permission. I am however not difficult, if you have made a special fork in order to create and maintain your own product, and you have 3-5 developers working with you (read: small team), they can use your fork providing they either are backers themselves or have obtained a Quartex Development License.
    • Changes and adaptations of the codebase must be made available to the original author (me, Jon-Lennart Aasenden). This way, good ideas will benefit everyone.
I hope you find Quartex Pascal and Quartex Media Desktop as thrilling as I do! Have a closer look, I am sure you be surprised just what can be done with a fresh new approach to web technology!
By becoming a patron, you'll instantly unlock access to 30 exclusive posts
28
Writings
2
Videos
By becoming a patron, you'll instantly unlock access to 30 exclusive posts
28
Writings
2
Videos

Recent posts by Quartex

How it works

Get started in 2 minutes

Choose a membership
Sign up
Add a payment method
Get benefits