EMY is an Efficient Mobile web librarY to create mobile web applications using HTML5, CSS3 & Javascript. Our goal is not to recreate what JQuery Mobile or Sencha are doing, but to provide a simplier & lightweight KISS alternative.
PostScript CSS HTML JavaScript PHP
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
demos
emy
sources/emy-icon
.gitignore
Icon
LICENSE
README.md

README.md

Emy - Efficient Mobile web librarY

EMY is an Efficient Mobile web librarY to create mobile web applications using HTML5, CSS3 & Javascript. Our goal is not to recreate what JQuery Mobile or Sencha are doing, but to provide a simplier & lightweight KISS alternative.

Getting Started

Emy is a single-page application library, which means all "views" are part of the HTML onload. Then its anchor-based navigation mechanism deals with sliding between views, keeping support & sync with the browser/device navigation stack (aka browser's back button).

<body>

    <header class="toolbar">
      <div><a id="backButton" class="button" href="#"></a></div>
      <h1 id="viewTitle"></h1>
    </header>

    <section id="first" data-title="First View" selected="true">
        <a href="#second">Go to second view</a>
    </section>

    <section id="second" data-title="Second View" class="panel">
      My second view.
    </section>

</body>

Feel free to test this code live on Codio.

Of course, external/additionnal views can be added after onload, by linking to an external html document.

<body>

    <header class="toolbar">
      <div><a id="backButton" class="button" href="#"></a></div>
      <h1 id="viewTitle"></h1>
    </header>

    <section id="first" data-title="First View" selected="true">
        <a href="second.html">Go to second view</a>
    </section>

</body>

index.html

<section id="second" data-title="Second View" class="panel">
  My second view.
</section>

second.html

For further reading, check out this full getting started tutorial on our website.

Demos

Nothing fancy, we just create a few demo apps to show how easy you can create apps using Emy.

  • Interface demo: showcases all UI elements included by default in Emy
  • Playing with forms: to show how GET and POST form submission works
  • Music app: deep navigation example
  • Contact app: Offline capable static app
  • Notes app: Offline capable + dynamic content + custom theme
  • Maps app: Using third party APIs + onshow / onexit views events
  • Facebook app: Generating elements based on API callbacks
  • Instagram app: Responsive web design layout (yes, double tap to like/dislike works)
  • Chat app: Based on Firebase.io DaaS - Emy meets WebSockets & realtime communication

Themes & extensions

Emy is lightweight & simple but you can get some extensions & themes to enhance features or change its look'n'feel.

Supported platforms

You can expect a full & smooth experience on:

  • iOS 6.x and above
  • Android 4.x and above
  • Blackberry 7, 10 and above
  • WindowsPhone 8 and above
  • Firefox OS 1.3 and above

It even works fine on desktop Safari, Chrome, Firefox & Internet Explorer 10 and above.

You might get some UI bugs yet have a functionnal app on "old" platforms as:

  • iOS 5.x
  • Android 2.3.x
  • Blackberry 6
  • WindowsPhone 7.5
  • Firefox OS 1
  • Latest Symbian series
  • Opera Mobile

But we clearly have no plan to support IE < 10, Blackberry 4.x or NetFront.

Community

Like the Facebook page Join the Google+ Community page Follow us on Twitter Join the iPhoneWebDev mailing-list (iUI + Emy)

Contributing

You can contribute to the project by reporting issues, suggesting new features, or submitting pull requests. Give the Get involved page a look to find out how.