DreamFactory(™) is an open source REST API backend for mobile, web, and IoT applications. It is built on top of the Laravel framework, and as such retains the requirements of the [Laravel v5.4 framework]
- Get powerful, reusable, documented APIs for SQL, NoSQL, files, email, push notifications and more in seconds.
- Use server-side scripts to easily customize API behavior at any endpoint, for both API requests and API responses.
- Secure every API endpoint with user management, SSO authentication, role-based access control, OAuth and Active Directory integration.
Learn more at our website.
Documentation for the platform can be found on the DreamFactory wiki.
Check our wiki installation page for the minimum software and extensions required for your system to successfully install and run DreamFactory 2.x.
These instructions allow you to quickly install DreamFactory 2.x on your system and try it out. The commands shown here are primarily for a Linux based OS, but this should also work on Windows with all the required software and extensions installed.
Note: This quick setup instruction assumes that you are familiar with composer, git and the basics of how to setup a web and database server.
-
Clone this repository to a directory on your system.
git clone https://github.com/dreamfactorysoftware/dreamfactory.git ~/df2
-
Change directory.
cd ~/df2
-
Install dependencies using composer. If composer is not installed, see here.
composer install --no-dev
-
DreamFactory sets up a default SQLite database by default. If you would like your instance to store system information in another database, run the following command. This will create your system environment file (.env) and will prompt you to configure your database of choice.
php artisan df:env
-
Regardless of what database you choose, run the following command to setup your database. This will create your system environment, generate your application key, run the database schema migration, seed the default services, and will prompt you to create your admin user account.
php artisan df:setup
-
Make sure your web server can read/write from/to storage/ (sub directories) and bootstrap/cache/ directories.
# Example: sudo chown -R {www user}:{your user group} storage/ bootstrap/cache/ sudo chmod -R 2775 storage/ bootstrap/cache/
-
Run the following command to try out DreamFactory 2.0 without configuring a web server. Otherwise, configure your web server to serve the public/ directory and launch your instance from a browser.
php artisan serve
To customize any of the environment settings or feature sets included in the install, run the new installer program.
Note this requires Bash 4.0 or newer.
-
Run the installer and follow the prompts. If the installer can not be run, you may edit the .env file directly.
./installer.sh
-
Run following commands to clear system cache.
php artisan cache:clear php artisan config:clear
-
If the system database environment is changed to a clean database, re-run the setup command.
php artisan df:setup
- Feedback is welcome on our forum or in the form of pull requests and/or issues.
- Contributions should generally follow the strategy outlined in "Contributing to a project"
- All pull requests must be in a "git flow" feature branch to be considered.