Skip to content

JoomGap Starter for JED. Customized JoomGap boilerplate to navigate JED via "Install from Web" API.

License

Notifications You must be signed in to change notification settings

shamsbd71/JGJEDStarter

Repository files navigation

JED Starter App

Find extensions for your Joomla site in the Joomla Extensions Directory, the official directory for Joomla components, modules and plugins.

A JoomGap starter project to create a hybrid mobile app for Joomla! CMS, powered by Cordova/PhoneGap, AngularJS and Ionic.

This project is the product of many years of iterative development and combined community knowledge from open source projects. It does not impose a specific development philosophy or framework, so you're free to architect your code in the way that you want.

Quick start

Choose one of the following options:

  1. Download the latest stable release from joomgap.com.
  2. Clone the git repo — git clone https://github.com/JoomGap/JGBoilerplate.git - and checkout the tagged release you'd like to use.
  3. Create a new App in PhoneGap build.
  4. Build and download APK (Android) or IPA (iOS) file.
  5. Copy the file to your mobile phone and install it.
  6. Have fun!

How to integrate JG Boilerplate with Joomla! CMS

JG Boilerplate includes JoomGap Simple Library to integrate Joomla! CMS.

A call to Joomla! can be simply implemented in this way:

q = jgSimpleApi.get(url, params).$promise;
q.then(function(response) {
	if ( (response) && (response.success) ) {
		console.log(response.data);
	}
}

Concerning to security measures

There are multiple security measures on browsers and server to prevent abuse.

In a Cordoba/PhoneGap mobile app, a mobile brower speaks with a web server with Joomla! CMS. Then, there are at least three security layers:

  • Mobile browser
  • Web server
  • Joomla! CMS

JG Boilerplater is mainly oriented for development. So, a permissive security policy has been implemented.

Production security policy

This is a checklist of security items to evaluate before publishing an app:

  • Latest Cordoba/PhoneGap version
  • Required plugins
  • android:debuggable="false", to disable Android debugging
  • Required device permissions
  • HTTP access control (CORS)
    • access origin
  • Whitelist policy
    • allow-intent
    • allow-navigation
    • allow-intent
  • Content-Security-Policy
  • AngularJS
    • $logProvider.debugEnabled(false);
    • $compileProvider.debugInfoEnabled(false);

Joomla and Cross-Origin Resource Sharing (CORS)

The same security points have to be evaluated to allow access from a different security domain that the source site domain.

JG Boilerplate opens connections via JSON-P to standard Joomla! sites. In JoomGap Simple Library, connections are handled with AngularJS $resource.

Features

  • Cordoba/PhoneGap mobile application.
  • Includes:
    • Cordoba/PhoneGap project
    • PhoneGap (iOS / Android / Windows)
    • PhoneGap build-ready configuration
    • AngularJS
    • AngularJS Animate
    • AngularJS Resource
    • AngularJS Sanitize
    • AngularJS UI Router
    • JoomGap Simple Library
    • Ionic Framworks
    • ngCordova

Useful Commands

Start a local development server for app dev/testing.

ionic serve	

Compile Saas to build stylesheets.

gulp

Updating Ionic. Update bower.json, driftyco/ionic-bower#....

gulp install

Mobile operating system support

  • Android 4 and 5
  • Apple iOS 8 and 9

This doesn't mean that JoomGap Boilerplate cannot be used in older OS, just that we'll ensure compatibility with the ones mentioned above.

Screenshots

Installation Step 1 - Android

Installation Step 1 - Android

Installation Step 2 - Android

Installation Step 2 - Android

Welcome screen - Android

Welcome screen - Android

License

The code is available under the GNU GENERAL PUBLIC LICENSE Version 3.

About

JoomGap Starter for JED. Customized JoomGap boilerplate to navigate JED via "Install from Web" API.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published