Skip to content
Romans Malinovskis edited this page Sep 11, 2016 · 21 revisions

Developer Wiki

If you looking to help with development of Agile Data (and subsequently Agile Toolkit), this page will be kept up-to-date with our current development status as well as link to useful resources.

If you spot any outdated info on this page, please edit it right away!

Request for Comments

  • [RFC1 Mutations](RFC1 Mutations)

Development Status

  • Agile Data ^1.0 is safe to use in your project.
  • Progress on ^1.1 is here: https://github.com/atk4/data/milestone/7
    • Refactor $m->join() logic
    • Add support for typecasting (datetime, money, etc)
    • Add support for custom validators (and docs!)
    • Add support for flags (readonly, visible, editable)
    • Start using transactions for CRUD operations
    • Other improvements
  • We brainstorm ideas for ^1.2 in Gitter.im.

Additional resources

  • Put some work in data-primer - a sample app demonstrating features
  • Create some publicity in Google+, Facebook and Twitter
  • Create blog post on features from 1.1
  • Create screencast video update for 1.1

Research

  • Create Full Agile Data feature Matrix
  • Crowdsource feature comparison with generic ORMs (cake, eloquent, fuel, etc)
  • Update migration guides: Yii, Doctrine 2, Eloquent, CakePHP3

Draft Documentation

Here are some documents that we are still changing and at some point they must be moved into General Documentation.

  • [SQL Action Matrix](SQL Action Matrix) - how queries are constructed for different actions()
  • Hooks - which hooks are needed and what are the parameters
  • Use of branches - On release policy, branches and to help you decide which version to use.

Obsolete Info

Needs to make sure it's fully moved into Docs and delete. Those documents may be inaccurate.

  • Business Models - Implement a clean business logic [DM].
  • Active Record - Use this when you need individual record access [DM].
  • Explicit Loading and Saving - Don't rely on framework to do loading magic for you. Load data yourself. [PM]
  • Relation Mapping - Traverse between business data [DM].
  • Persistence - Design and tweak how your Business Models are mapped into tables [DM->PM].
  • Derived Queries - Express your Business Models as SQL queries [PM].
  • Expressions - Use Derived queries to add fields in your Business Models that are calculated in SQL [PM].
  • Query Building - Build an execute complex multi-row queries mapped from your Business Models [PM].
  • Unit-testing - Business Models can be decoupled from persistence layer for efficient Unit Testing [DM].
  • Aggregation and Reports - Support report generation techniques, aggregation and unions for your Business models [DM].

Stray Articles

If you find a page on a Wiki that does not belong to any category, link it below:

  • here..

Posts and Articles

We're looking for more 3rd party blogs, tweets and mentions about Agile Data

Links