Greenfield development application design process?

Hi,

I am very intrigued by this product, sounds like a great idea!

Typically, when I write an application in Java/Ruby/etc…, I write my “Domain Objects” up front. These objects represent the database records. For example, I may write a Java class called “Product” that may have the following attributes such as name, sku

With dreamfactory, I imagine that I will be writing SQL scripts to generate my database structure first, then configuring the dreamfactory middleware, then the angularjs/client app.

Am I correct in my understanding, and if so, how are folks dealing with the “data design”. 15 years ago, I remember generating databases from an erwin document, but what are folks doing now?

Thanks!

Comments below.

I imagine that I will be writing SQL scripts to generate my database structure first.

Yes, you need to create a SQL schema. You can do this with SQL scripts. DreamFactory also has a schema API that you can use to create the schema.

then configuring the dreamfactory middleware

Correct. Once your schema is set up, you connect to it in the ‘Services’ tab and DreamFactory automatically creates a REST API for all tables in your database (if you use the REST API to create schema, then first create your DB and then connect to it with DreamFactory). There’s other configuration such as role set up, CORs access, and so forth. Check out wiki.dreamfactory.com for docs, especially the tutorials Tutorials - DreamFactory.

then the angularjs/client app.

Your client Angular app uses the REST API to perform CRUD operations, which comes back to the client in JSON format. The easiest way to see this in action is to import the sample address book for Angular here GitHub - dreamfactorysoftware/angular-sdk: An address book app for AngularJS showing user registration, user login, and CRUD. Follow the instructions in the README to see the app in action.