The smartest way to Doctrine definitions
Use powerful visual editor to import, edit and export Doctrine definitions.
Work faster and avoid all mistypes or errors.
1.Visually edit your project model.
EcommerceOrder: actAs: Priceable: vat: disabled: true Timestampable: created: alias: created_at type: timestamp format: Y-m-d H:i:s updated: alias: updated_at type: timestamp Restable: tableName: ecommerce_order options: charset: utf8 collate: utf8_unicode_ci columns: id: primary: true type: integer(4) notnull: true autoincrement: true unsigned: true ecommerce_order_state_id: type: integer(4) contact_id: type: integer(4) delivery_address_id: type: integer(4) billing_address_id: unique: true type: integer(4) ordered_at: type: timestamp past: true date: true customer_note: type: string internal_note: type: string relations: EcommerceOrderState: onDelete: CASCADE local: ecommerce_order_state_id foreign: id Contact: local: contact_id foreign: id DeliveryAddress: class: Address local: delivery_address_id foreign: id BillingAddress: class: Address local: billing_address_id foreign: id
2.Export it to complete definition files.
Download 14-day trial version
Try Skipper for free. No credit card needed.
Why use Skipper
Simple Project import
Smart import wizard allows you to import any of your Doctrine projects just in a few seconds. Created visual model lets you discover all objects and logic among them.
Definitions exported by one click
Export your project into Doctrine ORM definitions any time you need. Standardized output is completely ready-to-use, you don't need to edit or add anything.
Editing in visual interface
Create and edit all objects visually via smart dialogs and wizards. All changes in model evoke appropriate changes in exported Doctrine definition files.
Lower need of Doctrine skills
Value advisors, validators and assistants, definitions generated via standardized templates. Don't worry about Doctrine syntax and keywords anymore.
See all the features
Support for all Doctrine features
Skipper supports Doctrine native YAML format. Definitions are exported in standardized format compliant with Doctrine coding conventions.
Entities and modules
Create new or edit existing entity and change its fields and ORM properties. For better orientation in your Doctrine project, organize entities into colorful modules and regions.
Connect entities by one to one, one to many and many to many associations. Define owner and inverse entity or MN entity and aliases. Smart wizards will help you create Doctrine associations in no time.
Create and edit Doctrine inheritance via intuitive dialog simply and quickly. Choose base and derived entity, set up inheritance type and define inheritance discriminators.
With Skipper you can create indexes by a few clicks. In user-friendly visual interface define all needed indexes and choose fields indexed by them.
You can edit any of your model properties directly in visual model. Skipper offers unique Property Editor where any value can be modified.
You can customize configurations for your Doctrine project. Define your own datatypes, custom properties, add new behaviors or change existing properties.
Support for MVC frameworks
No matter, which MVC framework you use, whether it is Symfony, Zend or any other. Definition files generated by Skipper have support for any existing MVC framework.
Simply put, for us, Skipper is not just a tool to master, but a mastermind that teaches us the best programming practices.
Can Berkol, Biber Ltd
We use Skipper on our daily basis for ecommerce software development. It lets us visualize at a glance the data models and work on them in a simple and easy way.
Dario Schilman, IDS Soluciones Ecommerce
Skipper is especially helpful in the initial data modeling phase. Exporting the data model and scaffolding makes it really easy to get a first prototype up and running in a matter of minutes.
Jörn Wagner, Explicatis
Skipper is a stable and easy to use schema designing tool! No documentation, just design and everything is documented!
Siebe Vos, Inform'aid
We have good use of the tool. It simplifies our daily work, saves us time and is simple and intuitive to use.
Thomas Somoen, Try/Apt
It is faster and gives less errors to have Skipper create the mapping code instead of writing it myself. Later in the development process I often use the Skipper diagram as a quick reference.
Herman Peeren, Yepr
It saved us a lot of time designing and configuring complex data models. It is impressive to see what this software achieves on its own.
Michael Stoye, ColorGATE
It simplifies our work because it saves us time. With features added over time like adding behaviors to Propel in Skipper it has become an unmissable tool in our organisation.
Erwin te Bos, aXtion
More user stories
Detailed list of supported Doctrine ORM features
Skipper model properties
|Project||name, storage path, description|
|Module||name, namespace, description, external plugin storage, export path and format|
|Entity||name, namespace, description|
|Field||name, type, size, required, unique, primary key, auto increment, default value, enum values, description|
|Association||owner/inverse entity, reference fields, owner/inverse alias, association type (one-to-one, one-to-many), parent requirement, description|
|Many to Many||mn entity, owner/inverse entity, reference fields, owner/inverse alias, description|
|Inheritance||base/derived entity, inheritance type, discriminator value/field, description|
|Index||name, unique, indexed fields, description|
Doctrine ORM model properties
|Module||actAs (behaviors), options (charset, collate, type), connection, detect_relations,entity_prefix|
|Entity||actAs (behaviors), tableName,attributes (export), options (charset, collate, type)|
|Field||scale, email, notblank ,nospace, past, future, minlength, country, ip, htmlcolor, range, regexp, creditcard, date, readonly , unsigned , usstate, fixed, collation|
|Association||onDelete, onUpdate, orderBy, side-owning(type, cascade), side-inverse (type, casdcade)|
|Many to Many||onDelete, onUpdate|
|Index||type, index-field (sorting, length)|
Doctrine ORM behaviors support
Doctrine ORM datatypes support
Doctrine ORM inheritance support
- Column Aggregation
Doctrine ORM model import / export formats
- YAML (YML) definitions
Doctrine ORM associations support
- Doctrine One to one (one-to-one)
- Doctrine One to many (one-to-many)
- Doctrine Many to one (many-to-one)
- Doctrine Many to many (many-to-many)