RomVer – Romantic Versioning

Given a version number HUMAN . MAJOR . MINOR,  increment the:

  1. HUMAN version when you make any conceptual change, major rewrite, major documentation changes or any other change which requires additional HUMAN involvement.
  2. MAJOR  version when you make incompatible API changes,
  3. MINOR version when you add functionality in a backwards-compatible manner, or fix with backwards-compatible bug fixes.

Additional labels for pre-release and build metadata are available as extensions to the HUMAN . MAJOR . MINOR format.

Continue reading

Share this ...Tweet about this on TwitterShare on FacebookEmail this to someoneShare on RedditShare on Google+Share on LinkedInPin on Pinterest

Laravel Blade directive for conditional HTML classes

Sometimes you need to add classes to HTML elements conditionally, and when you try to do that you almost always end up with messy syntax. Here’s the example in Blade:

<article class="post post-{{ $post->slug }} @if ($post->featured) post-featured @endif @if ($post->sticky) post-sticky @endif">
    ...
</article>

Or with pure PHP:

<article class="post post-<?php echo $post->slug ?> <?php if ($post->featured): ?>post-featured<?php endif ?> <?php if ($post->sticky): ?>post-sticky<?php endif ?>">
    ...
</article>

And if you split it into multi-line you get even worse, and when you add even more conditional classes you get if mess.

Continue reading

Share this ...Tweet about this on TwitterShare on FacebookEmail this to someoneShare on RedditShare on Google+Share on LinkedInPin on Pinterest

How to pass data to JavaScript with Basset?

This article explains how to pass data from server PHP to JavaScript with Basset – better asset management for Laravel.

Sometimes you will want to pass data from server PHP to JavaScript but without API. It can be to preload data, or to pass some server specific data which shouldn’t be in API’s.

You can use Basset\Javascript class for that. Whatever you set on this class will be available from the browser JavaScript runtime.

Continue reading

Share this ...Tweet about this on TwitterShare on FacebookEmail this to someoneShare on RedditShare on Google+Share on LinkedInPin on Pinterest