DroidForge Studio

Hello everyone :waving_hand:

I’ve been working on a personal/open-source project called DroidForge Studio, and I would really appreciate feedback from experienced App Inventor and visual-development community members.

DroidForge Studio is an experimental visual Android application builder designed around the idea of combining traditional drag-and-drop development with modern native Android technologies.

My goal is not to replace MIT App Inventor, Kodular, Android Studio, or any other existing platform. I’ve learned a lot from visual-development platforms, and I’m experimenting with what a modern visual Android IDE could look like when visual components, logic blocks, Kotlin/Jetpack Compose, AI assistance, live testing and native project generation are connected in one environment.

What DroidForge Studio currently includes

  • :artist_palette: Visual Drag & Drop Canvas for Android UI design

  • :puzzle_piece: Component-aware Logic Blocks with events, properties and methods based on components used on the screen

  • :mobile_phone: Visible and Non-Visible Android Components

  • :high_voltage: Live Testing / Companion workflow

  • :laptop: Jetpack Compose + Kotlin Code Studio

  • :counterclockwise_arrows_button: Ability to move between Canvas, Logic and Code

  • :package: Native APK building

  • :outbox_tray: Android project/code export

  • :robot: AI-assisted Android app generation

  • :brick: Custom Component Studio

  • :books: Support for defining Android libraries/dependencies for custom components

  • :gear: App-level configuration for package name, version, SDK, assets, manifest and related Android settings

  • :artist_palette: Builder themes and customizable IDE appearance

One part I’m particularly experimenting with is the component-aware block system.

Instead of showing the same large block collection everywhere, the idea is that when you add a component such as a YouTube Player, Button, Map, Firebase component, sensor, etc., the Logic Editor can expose the events, methods and properties relevant to the components actually present on that screen.

For example:

Button1.Click

can trigger:

YouTubePlayer1.Load(videoId)

while the available YouTube Player blocks can include its related methods, events and properties.

Another area I’m developing is the connection between visual development and actual Android code. A screen can be visually designed and represented as Jetpack Compose/Kotlin, with a live canvas preview so developers can inspect or continue working closer to the native Android layer.

There is also a Custom Component Studio where the long-term goal is to make it easier to create reusable components with configurable properties, Android dependencies/libraries and Compose implementations instead of requiring every component to be permanently hardcoded into the builder.

The project is still under development, so I’m sharing it primarily to get technical feedback, ideas and testing help from people who already understand visual Android builders.

I’d especially appreciate feedback about:

Component architecture • Logic block UX • Events/methods/properties • Extension/component system • Native Android integration • Live testing • Project export • UI/UX • Missing components

GitHub:

DroidForge Studio
github.com/Adnan10p/droidforge-studio

The project is public, so developers are welcome to inspect it, test it, report issues, suggest improvements or contribute.

Thanks to the visual-development community for the inspiration and for any feedback you can provide.

2 Likes

Great job !
I've tried to install (win 10 pro DellE7270, path C:\Applicazioni\droidforge-studio\droidforge-studio-main) and run it, without success: by launching the start-studio.bat with a double click, the command window appears for a while and closes immediately without leaving the time to read the error message (if any).
But never mind, I'll look deeper at it later.
Cheers

Thank you very much for taking the time to test DroidForge Studio . I really appreciate your feedback and the effort you put into reporting the issue.

I investigated the problem where the batch file was closing immediately after being double-clicked. The issue was caused by a CMD batch parser syntax error — specifically, an unescaped parenthesis inside an IF block, which caused the script to terminate silently before reaching the pause command.

I’ve now completely refactored the launcher scripts, fixed the issue, and pushed the updated version to GitHub.

You can test the latest version using the steps below:

  1. Make sure the Node.js LTS version is installed on your PC:
    https://nodejs.org/

  2. Download the latest version again, or run git pull if you already cloned the repository:
    https://github.com/Adnan10p/droidforge-studio

  3. If you downloaded the ZIP file, extract it completely to a folder.

  4. Double-click:

    • START_STUDIO.bat — starts DroidForge Studio and automatically opens http://localhost:3000 in your browser.

    • STOP_STUDIO.bat — safely stops the local DroidForge Studio server when you’re finished testing.

Whenever you have some free time, I’d really appreciate it if you could give the updated version another try.

Please let me know whether it works correctly on your system now. If you notice any other bugs, errors, unexpected behavior, or have any suggestions for improvement, feel free to share them with me.

Your testing and feedback are genuinely helpful in improving DroidForge Studio.

Thanks again for your support!

1 Like

Dear @web, thanks for your updates but, as I said before, I'l re-test it later on with more spare time. Thanks for your patience :slight_smile: Cheers

1 Like

Hi, I've put a lot of "pause" in the .bat file so to track the steps and I've found that there are round brackets () that shall be substituted with [ ]. in a comment

But, more important: when trying to install dependencies the following appears:

So it seems that a lot of parts are no longer supported for vulnerability purposes.
I believe I will stop here further attempts because I haven't enough capabilities to go deeper in the matter (I'm a pretty old programmer when things were much more easy: like assembly language or machine code... :grin:) I'll wait for someone else to succeed and let us know. Cheers,

1 Like

for a program which has 14 vulnerabilities :neutral_face:

@web Please share a working program.

A few project are already available opening droidforge

I’m logged in by default as “Alex Developer”…

Hello everyone! :waving_hand:

First of all, thank you so much for taking the time to download, test, and share your feedback about DroidForge Studio. I genuinely appreciate everyone who has reported issues or taken the time to explore the project.

I am fully aware that DroidForge Studio still has many bugs, limitations, and unfinished features. The project is currently under active development, and this is exactly why I decided to make the source code publicly available on GitHub — so developers can explore it, test it, identify problems, suggest improvements, and hopefully contribute to its development.

Regarding the issues reported:

1. Windows BAT launcher issue: Thank you for investigating the batch script and identifying the problem with the parentheses. I've been working on improving the launcher scripts, error handling, and startup process so users can run the builder more reliably.

2. Reported security vulnerabilities: I appreciate this being pointed out. I'll review the dependency security reports, investigate the affected packages, and address the issues as part of the ongoing development process.

3. Default "Alex Developer" profile: Thank you for noticing this as well. The default profile behavior needs improvement so that demo information and actual user authentication are clearly separated.

I appreciate all three reports. They help me identify areas that need attention.

What I'm Actually Trying to Build :rocket:

DroidForge Studio is not intended to be just another simple drag-and-drop Android app builder.

My long-term goal is to develop a complete hybrid, multi-language, and multi-platform application development environment where beginners and experienced developers can work together using visual programming, traditional coding, or AI-assisted development.

I'm currently working towards supporting three major development stacks:

:purple_circle: Kotlin + Jetpack Compose — Native Android development.

:hot_beverage: Java + Android Views/XML — Native Android development.

:blue_circle: Dart + Flutter — Cross-platform Android and iOS development.

The idea is that when someone creates a new project, they will be able to choose their preferred development stack.

For example, if a developer selects Java, the builder should provide Java-specific source files, Android components, methods, events, dependencies, and native Android project generation.

If Kotlin is selected, the environment should work with Kotlin and Jetpack Compose.

If Flutter is selected, the builder should provide Dart files, Flutter widgets, Flutter packages, and Android/iOS project structures.

These are major architectural features that are still being developed, not something I am claiming is already fully completed.

Multiple Ways to Build an Application

I want DroidForge Studio to support different development workflows within the same environment.

1. Visual Drag & Drop Development

For people who don't want to write code, there is a visual Canvas where they can add components, configure properties, connect logic blocks, and design application screens.

2. Traditional Code Development

Developers who prefer writing code should be able to use Code Studio, create files, paste existing code, add dependencies, and work directly with the selected development language.

3. Connected Canvas, Code, and Logic Blocks

This is one of the most important ideas behind DroidForge Studio.

The goal is to connect all three development environments so they work together instead of functioning as completely separate editors.

For example, when a developer adds a component or configures an action through the visual interface, the corresponding code should be generated.

Likewise, when supported code is written or modified in Code Studio, the builder should be able to recognize the relevant components, properties, events, and actions and synchronize them with the Canvas and Logic Blocks.

I'm still improving this synchronization system, and making it reliable across multiple languages is one of the bigger technical challenges.

4. AI-Assisted App Development :robot:

I also want people who have little or no programming experience to be able to build applications using AI.

The idea is to allow developers to configure their preferred AI provider, such as Google's Gemini or Anthropic's Claude, using their own API credentials.

Users should eventually be able to describe the application they want, generate screens, create components, implement logic, and modify existing projects through AI assistance.

For example:

"Create a food delivery app with login, restaurant listings, a shopping cart, and an order tracking screen."

The AI should understand the selected development stack and generate compatible UI, components, logic, and code.

Custom Components and Flutter Widgets

Another important part of the project is the ability to create and add custom components.

I don't want DroidForge Studio to remain limited to a fixed number of built-in components.

Developers should be able to create their own reusable components, define properties, events, and methods, configure the required dependencies, and add their own implementation code.

For Flutter, this means working with Dart and Flutter widgets rather than trying to reuse native Android components directly.

Some experimental support is already being explored, but expanding the component and widget ecosystem will take time.

The long-term goal is to make the builder extensible enough that developers can add the functionality they need without waiting for every component to be built into the core system.

Why I Made It Open Source :heart:

I know this is an ambitious project, and I also know that there is still a lot of work to do.

I'm not claiming that DroidForge Studio is currently a finished replacement for MIT App Inventor, Kodular, Flutter, or Android Studio.

I'm simply trying to bring together ideas from visual programming, native Android development, cross-platform development, and AI into one development environment.

I decided to share the source code early because I believe feedback from experienced developers is extremely valuable, especially from communities like MIT App Inventor and Kodular.

Whether you are an experienced programmer, a visual app developer, or someone interested in experimenting with new development tools, your suggestions are welcome.

If you encounter bugs, compatibility problems, missing components, or architectural issues, please feel free to report them on GitHub. Contributions and pull requests are also welcome.

GitHub Repository:
https://github.com/Adnan10p/droidforge-studio

Thank you again to everyone who has tested DroidForge Studio so far.

Your feedback is helping me understand what needs to be improved, and I hope we can gradually turn this experimental project into a useful development tool for the community.**
DroidForge Studio Developer**

1 Like

Your enthusiasm deserves success !!!
Never give up !

Hi @web this looks really cool. I like the use of nodes for logic. Is that react-flow? What made you go for that type of interaction instead of blocks or other similar systems?