Draft:B4X
Submission declined on 5 June 2025 by UtherSRG (talk). This submission is not adequately supported by reliable sources. Reliable sources are required so that information can be verified. If you need help with referencing, please see Referencing for beginners and Citing sources. This draft's references do not show that the subject qualifies for a Wikipedia article. In summary, the draft needs multiple published sources that are:
Where to get help
How to improve a draft
You can also browse Wikipedia:Featured articles and Wikipedia:Good articles to find examples of Wikipedia's best writing on topics similar to your proposed article. Improving your odds of a speedy review To improve your odds of a faster review, tag your draft with relevant WikiProject tags using the button below. This will let reviewers know a new draft has been submitted in their area of interest. For instance, if you wrote about a female astronomer, you would want to add the Biography, Astronomy, and Women scientists tags. Editor resources
| ![]() |
Comment: None of the cited references are WP:SIRS. At least three must be. - UtherSRG (talk) 19:11, 5 June 2025 (UTC)
![]() | This is a draft article. It is a work in progress open to editing by anyone. Please ensure core content policies are met before publishing it as a live Wikipedia article. Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL Last edited by Citation bot (talk | contribs) 4 seconds ago. (Update)
Finished drafting? |
![]() | This article may be too technical for most readers to understand.(January 2016) |
![]() | |
Developer(s) | Anywhere Software | Erel Uziel |
---|---|
Operating system | Microsoft Windows |
Available in | English |
Type | Programming |
License | Apache License 2.0[1][2] |
Website | https://www.b4x.com |
B4X is a suite of rapid application development IDEs and proprietary programming language developed by Anywhere Software. It enables developers to create native cross-platform applications for Android, iOS, desktop (Windows, macOS, Linux), Arduino, ESP8266/ESP32, and Raspberry Pi using a syntax reminiscent of Visual Basic. Although B4X syntax is very similar to BASIC, it is an entirely new language.[3][4][5]
The B4X suite comprises four main products:
- B4A (Basic4Android) for Android development
- B4i for iOS development
- B4J for desktop, server, and Raspberry Pi applications
- B4R for Arduino and microcontroller programming
All tools, except B4i, are available for free and are designed to be accessible to beginners, hobbyists, and professional developers alike. Applications developed with B4X are compiled into native binaries without external dependencies, ensuring high performance and seamless integration with the target platforms.
For learning the language, there is a comprehensive set of eBooks called B4X Booklets available for free that act as a learning guide.[6] There is also a library of videos made by Erel available to consume.[7][8]
Language Characteristics
[edit]The B4X language is imperative and event-driven, supporting both procedural and modular programming paradigms. While it incorporates object-oriented features such as class modules, it does not support inheritance or method overloading. This design choice simplifies the language, making it more approachable for developers transitioning from classic BASIC or Visual Basic environments.[9]
Development Environment
[edit]B4A, B4i, and B4J include a visual designer that facilitates the creation of user interfaces through a drag-and-drop interface. B4R, targeting single-board platforms, does not include a visual designer due to the nature of its target SoC devices. The integrated development environments (IDEs) offer features such as code completion, syntax highlighting, and debugging tools to enhance developer productivity.[10]
Community and Adoption
[edit]B4X has garnered a global user base, including educational institutions, hobbyists, and enterprises. Notably, organizations such as NASA, IBM, HP, Honda, Bosch, and Adobe have utilized B4X tools in various projects. The B4X community actively contributes to forums, libraries, and tutorials, fostering a collaborative environment for developers.
Recent Developments
[edit]As of early 2025, B4X continues to evolve with ongoing updates. A significant upcoming feature is PyBridge, which aims to integrate Python scripting capabilities into B4J, expanding its versatility for desktop applications. This integration is anticipated to open new avenues for developers leveraging Python's extensive ecosystem within the B4X framework.[11][12]
B4A
[edit]B4A (formerly known as Basic4android) is the second IDE produced by Anywhere Software. The first public version was released on December 7, 2010, and allows users to code native Android apps in B4X. B4A is able to create apps, widgets, and games. There is also a beginners guide that is updated after each new release of the IDE.[13] On February 5, 2020, B4A became free.[14]
B4J
[edit]B4J is the third IDE produced by Anywhere Software. The first public version was released on December 4, 2013. B4J targets the following platforms: Desktops, Web Servers, and ARM Boards such as Raspberry Pi.
B4i
[edit]B4i is the fourth IDE produced by Anywhere Software. B4i is capable of creating applications that target iPhone and iPad devices and there is a separate service which allows developers to compile and publish apps without the need for a local Mac computer. The first public version was released on November 14, 2014. There are no plans to make B4i free.[15]
B4R
[edit]B4R is the fifth IDE produced by Anywhere Software. B4R allows programmers to write applications for Arduino boards. Supported Arduino modules include: ESP8266 and ESP32.[16]
Basic4PPC
[edit]Basic4ppc (pronounced "Basic for PPC") was the first IDE produced by Anywhere Software. Basic4ppc allowed programmers to write applications for Pocket PC devices that ran the Windows Mobile operating system. Basic4PPC was released in 2005 and its final release was in December of 2018. Basic4PPC is no longer available for purchase.
Release history
[edit]B4X IDE | Current Version | Release Date | Changelog |
---|---|---|---|
B4A | 13.10 | January 13, 2025 | Link |
B4i | 8.90 | May 15, 2025 | Link |
B4J | 10.20 | March 17, 2025 | Link |
B4R | 4.00 | September 5, 2023 | Link |
Code examples
[edit]Comments
[edit]Comments are usually used to point out what a particular piece of code does. Comments can also be used to describe whole methods. Compilers ignore comments so use comments for whatever you want!
'This is a comment
Displaying a random number in a message box.
[edit]Declare a XUI variable in "Process_Globals","Globals", or "Class_Globals":
Private xui As XUI
Generate the random number and then display it in a message box:
Public Sub MyButton_Click
Dim Random As Int = Rnd(1,10)
xui.MsgboxAsync(Random, "Your random number")
End Sub
Displaying a random number in a message box (legacy method).
[edit]The following code can be shared between B4A, B4i, and B4J with no changing:
Sub MyButton_Click
Dim Random As Int = Rnd(1, 10)
#If B4J
fx.Msgbox(Form, Random, "Your Number")
#Else
MsgBox(Random, "Your Number")
#End If
End Sub
References
[edit]- ^ B4A github
- ^ B4J github
- ^ "Cross platform RAD development tools | B4X".
- ^ "IDE, Android Development Tool".
- ^ B4X in 3 minutes.
- ^ "[B4X] Documentation". www.b4x.com. 30 January 2018. Retrieved 2025-06-06.
- ^ "B4X Video Tutorials". www.b4x.com. Retrieved 2025-06-06.
- ^ "Tutorials on Vimeo".
- ^ "B4X Language".
- ^ Christl, Klaus; Uziel, Erel (2025). B4X IDE.
- ^ "The next step for B4X is PyBridge". 4 February 2025.
- ^ "Markdown2 python library integrated into B4J". 27 January 2025.
- ^ "Guides | B4X Getting Started".
- ^ "Other - It's time to grow". www.b4x.com. 22 January 2020. Retrieved 2025-06-06.
- ^ "Other - It's time to grow". www.b4x.com. 22 January 2020. Retrieved 2025-06-06.
- ^ "B4R for ESP32/ESP8266/ARDUINO". 4 April 2022.