Home Back

About DBFree V4.1 See more screenshots

DBFree is a software suite for Microsoft Windows: it can be used by power users to run existing web sites, by amateurs to learn programming and build their own applications or by developers as a runtime environment for MaxScript applications to be redistributed.
Introducing DBFree HTML Experts xBase/Clipper USers Newbies

How does it look like?

The new Control Center running on Windows 10 desktop
The default companion site displayed by Microsoft Edge browser
Not using Windows 10? No problem: the latest DBFree V4.1.7.7 can also run on all older versions, including XP .

System Requirements

Any recent PC capable of runnin Windows: if it can run it smoothly you can run DBFree V41 as well and using it as server while you keep on using it for your normal work. DBFree is extremely lightweight and you'll ever notice it is running.
Still using XP?
No problem. Latest release of DBFree runs also on older versions of DBFree down to Windows 2000 Pro.
You can recycle your old XP boxes turning them into powerful web servers. You can even make them work in clustera. Or serve web apps for mobiles.

Website security

DBFree uses a drastic approach to security: all the administrative tasks can be done from the server console, but only from there.
There is nothing (unless you write it your own and put it there) to let you manage it from web. This means that to manage the server you must be sitting at its desk or use the Windows own Remote Desktop.

DBFree advanced programming models

DBFree rely on MaxScript for programming. MaxScript is a server-side, procedural, imperative language heavily inspired by xBase.
DBFree offers a superset of traditional MaxScript/xBase commands and an unique implementation based on recursive pages named WebObjects

Classic CGI

See the code

ASP model

See the code

xBase style

See the code
read more about programming for DBFree and its set of functions for building rich user interfaces

WebObjects: the real difference

WbObjects is a peculiarity of DBFree. It is a programming style, not a tecnology. Any language for the web can adopt it, anyway DBFree is built around it.
(To read more about WebObjects see About Web Objects in the home page main menu under the section Using DBFree.)
DBFree makes extensive use of standardized code:
  • Page Templates
  • Standard headers
  • Preassembled Components
  • Code Parts
  • UI parts
(DBFree 4.1 WebObjects Model relies on Twitter Bootstrap 3.3 and JQuery 2 and requires a modern browser supporting HTML5)
Code is available through our Code Assistant Service

What can you do with DBFree? Examples: Calendar Orders DB Browser
Other possible uses are discussed here.

DBfree and portable devices

DBFree offers a suitable solution to port your existing data on handheld devices: just build a standard web application with a responsive layout and provide you user our DBFree gateway for Android to connect with it.
DBWG (DBFree Web Gateway) is currently under revision to be made compatible with DBFree V41 and temporarly unavailable: please refer to mobile.dbfree.org for more informations.

DBFree is Open Source
(except MaxScript and some utilities)

HTML Expert?

If you feel confortable with HTML then MaxScript will be a natural step forward for you.
With DBFree you will be productive literally in minutes.
Just take a look at this example .

You don't like HTML?

If you are accustomed with older procedural languages as BASIC, PASCAL etc. then MaxScript is the best solution for you.
With this language, you can minimize the hassle of meddling with the long and wordy instructions typical of HTML pages. at least as far as possible.
You can even start with almost no knowledge of HTML,to then learn it naturally during development of the project.
Just have a look at this page

You were cut off because of the web? Jump on DBFree and you'll be back in business just in few hours. Especially if you want to reach portable devices as smartphones and tablets:they have a strong affinity with the old terminals (and the way we dealt with them) bigger than you'd ever thought.
And procedural programming couples very well with applications made to run one at a time, one page at a time, on small displays.
Learn more

MaxScript offers maximum freedom of choice when it comes to writing code. There are practically no impositions except the basic technical requirements of the compiler (one statement per row, one instruction per statement, and little more).
No matter what you are used too, as soon as you keep in mind that MaxScript is not an Object Oriented language, you can adopt any programming style you like. MaxScript (in its DBFree implementation) is so flexible that gives you even the chance of rewriting the language itself, if you like so.

Learn more

Old Clipper/xBase fan?

Welcome home!
There is no better place than this to recover the spirit of the Roaring Years Of Personal Computing.
And this happens just now, right when the personal computer is at sunset, replaced by a host of intelligent devices completely beyond our control.
Here, with the DBFree Project, we attempt to regain possession of amateurial computing.
We do not have the aim to change the world, or shake the IT community with innovation, but at least to come back to have fun with coding, that's for sure.
Read more

Absolute beginner?

No problem. MaxScript is by far one of the easiest language to learn around.
If you're intrested into practical purposes and you still have vague school memories of what a web page should look like then you already have the basic skills to start.

Curious? Just have a look at this classic "Hello World!" example

You may also want to take a look at this page for an explanation on why you my want to use DBFree.

Or simply get the book DBFree for Newbies (Free) and start reading.

Professional developer?

Well, probably this is not the product for you.
Today developers work in teams. And DBFree has been designed with only one thing in mind: keep all the development and deployment process under control of a single person.
Mind you - MaxScript is everything but a toy: at its core is not less complex than Phyton, PHP or other scripting languages, but it's not Object Oriented, has no IDE, it is not WYSIWYG and first of all, at least in our DBFree implementation, is totally open: there is no way to hide the code you write and deploy to users.
While the code, unlike Javascript, never travel down to the users the sources are completely exposed to anyone that have full access at the servers where applications are installed.
There is no (simple) way to obfuscate the code and this was done deliberately.
Otherwise why would we call it DBFree?

Using DBFree for commercial purposes

Even if DBFree intentionally does not offer a way to hide the source code, this doesn't strictly mean that you can't market commercial solutions built on top of it: simply you can't do it in the usual way, deploying your application directly to users.
If you plan to do something commercial you must market it as a service instead that as an application (i.e. installing everything on your own servers not to user's ones.
DBFree V4.1 has been re-designed just for that: to make you develope at home and then place everything in the cloud.
And eventually - but this depends on you - marketed under the SAAS (software-as-a-sevice) business model.
A business run by individuals, not by large software companies.
Just to remain true to its original philosophy.

To learn more on this topic see other DBFree publications available on other sections of this site
Top of page

What's DBFree good for?

DBFree is a flexible tool: by changing its configuration you can use it for different purposes.

Using DBFree for self-learning

If you've always wanted to learn how to build software yourself — or just whip up an occasional script — DBFree it's the perfect place where to start.
If you're curious about how to become a programmer, you can get off to a running start using the integrated MaxScript Console.
A common pitfall for beginners is getting stuck figuring out which programming language is best to learn first: there are a lot of opinions out there, and this may be confusing you even before to start.
Well: just install DBFree and in ten minutes flat you'll know if learn programming is the right path for you.
In the end, language doesn't matter THAT much. What is really important is the understanding of data and control structures and learning MaxScript will give you a deep understanding of both. Every language have elements that you'll use in other languages and concepts that you will reuse many times no matter the platform you're on: DBFree is completely HTML-based, and learning MaxScript will give you a good understanding of that, which at the moment is the most reusable competence you may imagine.

Using DBFree as personal organizer

Need to keep tracks of your appointments? Do you need a personal agenda or an address book?
There is a lot of software that let you do this (literally tens of hundreds), so why using something like DBFree?
Well, DBFree let you share your data among all your internet-enabled devices (including smartphones), wherever you are. And you can do it without ever writing a single line of code (or even knowing how to do that).
AS soon as you know where to put your hands on your ADSL router configuration you're done.

Using DBFree as Web Server

Right after installation you can set DBFree for acting like a web server on internet (or on your intranet).
The configuration of the whole system is utterly simple, assuming you have full access to the router that connects you with internet.
The main benefit of using DBFree on your own telephone line is that you will have at your disposal all the resources of the PC you connect: an huge hard disk (an all its content), immediate updates of shared data and all the processing power of the CPUs without having to share it with anyone.
You don't even have to keep you PC on all the time: you may keep a cheap static external web site hosted by a provider and provide a link to your home-hosted one warning that this is only active during office hours.

Using DBFree as staging server

Assuming you have enough experience you can easily set your home PC as staging server, where you develope and test your web applications, and then deploy to a production server elsewhere (ideally in the cloud but not necessarily).
DBFree already comes with the basic tools for starting (specifically the PSPad editor) and, in facts, the whole DBFree GUI have been developed only by using the DBFree selection of tools: PSPad for source editing, DBManager for database designing and - of -course - DBFree embedded server for testing locally.

Using DBFree as production server

You can also use DBFree for production: if all you want is to run a portal for your firm DBFree will be up to the task.
Anyway if you want to host more than one Web Site at a time you will need something else.
Assuming you have the necsary skills (and patience) Micorosoft IIS8 will serve you right: albeit a little complex to configure it is a robust and reliable solution for almost any kind of utilization. It works well with MaxScript (actually it is the server behind this site) and moreover it is absolutely free.
Another simpler solution, that does not require special competence other that those acquired by installing and using DBFree is to get DBWEB, the datacenter server for DBMax (and DBFree).

Using DBFree for automating existing web sites

You can use DBFree for serving dynamic pages while the large part of your website remains static and hosted outside.
All you have to do is to prepare web forms on your external web site and address the result (the target page of the form) to the one on your DBFree-powered PC at home or office.
By using iframes or popup windows you can make the whole process seamless without any changes on your existing stsatic site (except, obviously, the pages where you will put the web forms).

DBFree Database Engine (DDE)

The database features of DBFree

DBFree reads and writes DBF files natively, without the brokerage of any other software: this means nothing to install, nothing to configure, nothing else to run (and monitor) on the server.
Even if you can use any external DBF utility for manipulating the DBF tables (including commercial products like those offered by dBase inc.) DBFree offers some utilities by its own.
The best, at this moment, is the DBManager:

Similarly to any other application for DBFree, the DBManager comes with full source code, ready to be used or to serve as foundation for your own customized version. DBManager is also a great place to start learning how a DBApp is made and how to program using MaxScript.

DBManager screenshots

Database selection
Table selection and editing
Displaying table structure

Code generator
Modifying structure of tables
Exporting/importing using other formats

Top of page