redCORE: an abstracted development layer for Joomla! - JWC14
-
Upload
tito-alvarez -
Category
Software
-
view
413 -
download
0
description
Transcript of redCORE: an abstracted development layer for Joomla! - JWC14
redCOREan abstracted development layer
for Joomla!
Tito Alvarez
• 14 years experience in PHP
• 8 years experience in Joomla!
• Backender / Frontender / Commercial templates / System
Integrator / SysAdmin / Cleaning and stuff when needed
• Worked in banking, software pre-sales, Main Developer at
Joomlashack
• Currently Senior Developer at redCOMPONENT
Agenda
• What is redCORE?
• Features:
basic and extended
• Demo
• Roadmap
• Collaboration
• Q&A
Photo credit: https://www.flickr.com/photos/75659300@N00/2615848530/
What is redCORE?
• Abstracted development
layer: not a final extension
by itself
• Provide backward
compatibility
• Avoid repetitive tasks like
custom inputs or layouts
• Framework for powerful,
enterprise-size applications
Photo credit: https://www.flickr.com/photos/52137170@N00/56206868/
Yet another framework?
• Stop reinventing the
wheel
• No convention over
configuration
• No need to rework for
various Joomla! versions
• It extends Joomla!
classes
Native features
• Works in multiple Joomla! versions
• Layouts
• Improved form fields
• Smart and integrated installer
• Frontend libraries
Multiple Joomla! versions
• Extends Joomla!
classes
• Specific methods
for each Joomla!
version
Layouts
• JLayout: repeat portions of views between code
• Only available for Joomla! 3.1+
• redCORE makes it available for 2.5+
Layouts example
myextension/layouts/helloworld.php
Joomla! way: JLayout
redCORE: RLayout
Improved fields
• Country list
• Currency list
• Date picker
• etc
Photo credit: https://www.flickr.com/photos/23212428@N00/10023456065/
Installer
One package to install them all:
• Component
• Libraries
• Media
• Modules
• Plugins
• Templates
• Translations
Photo credit: https://www.flickr.com/photos/35723892@N00/4090782772/
Package validation
• PHP version
• MySQL version
• PHP packages (GD,
SimpleXML)
• Extra validations
installing complementary extensionsin the extension XML manifest file
adding validationsin the extension XML manifest file
running the installer
Photo credit: https://www.flickr.com/photos/47257185@N03/8696914680/
Frontend Libraries
• Bootstrap
• Checkbox
• Timepicker
• Flexslider
• Font-awesome
• jQuery
• jQuery-UI
• Select2
including frontend librariesin your code
decide which will be includedin the frontend of your site
Extended features
• Translation for extensions content
• Built-in web services
• OAuth2
Photo credit: https://www.flickr.com/photos/50318388@N00/5480814627/
Translations for extension content
• Content elements like:
• E-commerce products
• Content articles
• etc
• Easy setup
• Optimized for large
databases
• Joomla! safe and compatible
method
Photo credit: a href="https://www.flickr.com/photos/56013895@N00/122872445/
Benefits of redCORE for translation
• Does not duplicate content
• Extends single tables with
separate fields
• Original value change
notification
• Easy setup through
redCORE backend
• Manifest files compatible
with Falang and Joomfish
Photo credit: https://www.flickr.com/photos/73309241@N00/2642246332/
Translation done right and fast
• It sets up new tables
and Foreign Keys for
the translated tables
• Does not duplicate the
whole table but just
translatable fields
• Option for triggers if not
using InnoDB
Photo credit: a href="https://www.flickr.com/photos/42221201@N04/14447856391/
Built-in web services
• Server setup
• RESTful interface
• HAL (Hypertext
Application Language)
• JSON or XML formats
• Authentication through
Joomla! or oAuth2
Easy set up of web services
• Through XML manifest
file
• Allows versioning of
web services - for
backward compatibility
• Specification of REST
methods and custom
actions
Auto-documented
• Documentation is
generated automatically
oAuth2 server
• Deploys a
server to
avoid
username/pa
ssword for
API
• Individual
client
creation
oAuth2 client creation
• Ability to define grants
and scopes
• Match client to some
Joomla User
redCORE demo
Photo credit: https://www.flickr.com/photos/95257089@N00/519148077/
Roadmap
• Payment plugins
• redCORE extension
manager
• Improved ACL
• Selenium testing
integration
Photo credit: https://www.flickr.com/photos/46527925@N04/7982351003/
Collaboration
• redCORE is open source
• Github:https://github.com/redCOMPONENT-
COM/redCORE
• Documentation:http://redcomponent-com.github.io/
Q&A
Thank You