Home

Awesome

UI-O-Matic

Build status Documentation Status NuGet release Our Umbraco project page Chat on Gitter

Please not that these docs are for v1 of UI-O-Matic, if you are using the latest and greatest version please go to the latest docs

Auto generate an integrated crud UI in Umbraco for a db table based on a petapoco poco

Implement an interface and decorate your class and properties with some additional attributes.

Example

If you have the following db table

CREATE TABLE [People] (
  [Id] int IDENTITY (1,1) NOT NULL
, [FirstName] nvarchar(255) NOT NULL
, [LastName] nvarchar(255) NOT NULL
, [Picture] nvarchar(255) NOT NULL
);

This class

[UIOMaticAttribute("People","icon-users","icon-user")]
[TableName("People")]
public class Person: IUIOMaticModel
{
    public Person() { }

    [UIOMaticIgnoreField]
    [PrimaryKeyColumn(AutoIncrement = true)]
    public int Id { get; set; }

    [UIOMaticField("First name","Enter the persons first name")]
    public string FirstName { get; set; }

    [UIOMaticField("Last name", "Enter the persons last name")]
    public string LastName { get; set; }

    [UIOMaticField("Picture", "Select a picture", View = "file")]
    public string Picture { get; set; }

    public override string ToString()
    {
        return FirstName + " " + LastName;
    }

    public IEnumerable<Exception> Validate()
    {
        var exs = new List<Exception>();

        if(string.IsNullOrEmpty(FirstName))
            exs.Add(new Exception("Please provide a value for first name"));

        if (string.IsNullOrEmpty(LastName))
            exs.Add(new Exception("Please provide a value for last name"));


        return exs;
    }
}`

Will generate the following UI

Documentation

For docs please go to http://uiomatic.readthedocs.org/

Presentation

For the quick intro check http://slides.com/timgeyssens/uiomatic#/

Test site

Backoffice credentials: