Skip to main content

Basic Prototype App with Symfony3

The objective of this is to build a simple route, and controller that handles this entire “application.”

The components of this simple prototype are essentially a bunch of HTML pages with interaction hard-coded or baked into the twig templates. So the objective here is to build the structure such that building a new template is all that is required and the application will then pick it up.


  1. Separately a custom controller handles exception catching and 404 errors.
  2. Everything, including authentication/authorization can be “faked”
    1. Presumably you’d hide this behind HTTP-Basic or keep local only.

The Route

The Controller

How it Works

Now all you need to do is build your filenames to match and you can create template files that work out of the box.

Now your routes map to filenames, which for the purposes of a simple static HTML prototype makes things very easy for any designer or developer to add and work with:

Route (path) Template filename
/jake/home DemoBundle\Resources\views\Jake\home.html.twig
/auth/forgot-password DemoBundle\Resources\views\Auth\forgot-password.html.twig
/jake/dashboard DemoBundle\Resources\views\Jake\dashboard.html.twig

Wireframing, Prototyping and Demos oh my!

As far back as I can remember I have been the type of person to draw a problem out so I can visualize it and hopefully solve it by understanding it better. I recall reading studies that explained this was because understanding a problem is more than half the way to solving it. This is similar to the rubber duck philosophy. However, when conceptualizing an idea that isn’t a problem per-se, but you want to articulate your thoughts into a “demo” or prototype, there are countless tools out there, but in my experiences they generally take far too much investment to take a fresh idea into a more appropriate sapling. On the flip side there are “wireframing” tools like Balsamiq and others that are great for conceptualizing but can’t go the one step further to show vision. Invision for example is in my opinion the greatest prototyping tool there is, but you need designs and lots of imagery to make that work for you effectively. If you’re not a designer, or you need more than powerpoint or MS Paint, then forget it.

I believe I found the bridge in that gap, and its name is JustinMind. I’ve been able to take my novice (at best) imaging skills, and import the free widgets for Bootstrap, FontAwesome, and charts, and I’ve got everything I need. It looks like a $495 perpetual license is all I need to keep using indefinitely after my trial, and I have to admit it’s going to be difficult not to fork out the money, they’ve earned it.