Skip to content
This repository has been archived by the owner on Oct 10, 2023. It is now read-only.

What is Foxtrot

Gabriel edited this page Jun 4, 2021 · 8 revisions

Description and goals

Foxtrot is a web app development framework which intends to replace a big part of the standard development stack with one single, simple, lightweight tool.

It's like combining a frontend framework like Ionic and a backend framework like Symfony.

But it's a tool that has been written from scratch thinking about weight and performance, with zero dependencies, requiring barely any configuration, and as simple as something like this can get, aiming to be fast, especially on mobile, and easy on the mind of the overworked developer:

The purpose of the framework is to make the developer's life easier without giving up quality.

But Foxtrot has several differentiators.

Visual editor

It features a visual editor, with which you can build any kind of UI. Unlike other editors where you work with big chunks or blocks you can just customize, Foxtrot offers basic structural elements (containers, rows, columns, buttons, text blocks, etc.) to mix as you want, plus complex components such as data tables, search fields, calendars, loops and more. And, in the end, the page, or view, is stored as plain HTML+CSS.

The editor features the ability to setup data access, run JS expressions, place flow control components and call frontend or backend functions.

Seamless client<->server communication

But the framework also features the ability to integrate the UI with the code automatically from within the same editor. And it connects the frontend with the backend, automatically as well, as if both were the same language.

At the same time, frontend and backend are totally detached from each other (they're totally independent).

You can host both on your server (like a regular website, web app or PWA), you can create a native mobile app and have the backend on the server, or your app could have no backend at all. You can also use just the backend part of Foxtrot to create a headless backend or an API to consume it from some other kind of website or app built with something else.

Low-code (but you do need to know how to code)

Foxtrot is meant to be no-code at some point. But, full disclaimer, you do need to know how to code. It's more of a tool to automate most of the development process.

You will have to write just the logic of your application. You won't have to write HTML, or worry about loading the code, managing events, client-server communication, etc.

Even the database is created and updated automatically, and you won't have to write SQL either.

On top of it, everything is meant to be done in almost-human language.

Low requirements, no-dependencies, no-configuration

Another key point is that Foxtrot's only requirements are a modern web browser, and for the server, PHP 7 and MySQL. That's all. This means that it will run on any cheap server, and on any device, even years-old ones.

There's no command line. Just download, one click, and you're ready to go.

Then, everything is done from a visual app manager, even building the release or compiling a mobile app and running it on a physical device.

Future features

Eventually it may have a visual programming language like Scratch, with the ability to call code for more complex stuff, and the manager may become a VSCode extension.

For more info about Foxtrot's current and planned features, see What else can Foxtrot do?.

Thank you!

Thank you for reading this Wiki. Go ahead and learn how to get started in the next section!

Next

Installing Foxtrot