SlideShare a Scribd company logo
1 of 31
Download to read offline
Last Updated: Jan. 2014
Lalaji Sureshika & Joseph Fonseka
Customizing the API
Store & Publisher
WSO2 API Manager Team
**
About the Presenters
๏ Joseph joined WSO2 in September 2013. He is a Senior
Tech Lead in the WSO2 API Manager team where he
focuses on improving the UX of the API Manager. In
addition to his product development efforts he is also
a contributor to the Sahana and OpenEvsys open-
source projects. He is also a FOSS advocate.
๏ Lalaji joined WSO2 in September 2010. She is a senior
software engineer in the WSO2 API Manager team
where her main focus is on the development of the
product. In addition to her product development
efforts she has provided development support and
technology consulting on customer engagements,
including customer QuickStart programs.
*
About WSO2
*
๏ Global enterprise, founded in
2005 by acknowledged leaders in
XML, web services technologies,
standards and open source
๏ Provides only open source
platform-as-a-service for private,
public and hybrid cloud
deployments
๏ All WSO2 products are 100% open
source and released under the
Apache License Version 2.0.
๏ Is an Active Member of OASIS,
Cloud Security Alliance, OSGi
Alliance, AMQP Working Group,
OpenID Foundation and W3C.
๏ Driven by Innovation
๏ Launched first open source API
Management solution in 2012
๏ Launched App Factory in 2Q 2013
๏ Launched Enterprise Store and
first open source Mobile solution
in 4Q 2013
**
What WSO2 delivers
*
Agenda
๏ Introduction to WSO2 API Manager
๏ Dive in to API Store
๏ Customizing API Store & Publisher
๏ Localization
๏ Sample Customizations
๏ Future
*
Introduction
๏ WSO2 API Manager is a complete solution for publishing and
managing APIs.
๏ It comes with an out of the box API Store which allows you to
publish and advertise your APIs.
๏ You can easily customize the API Store to reflect your company's
brand.
๏ Also you can add targeted content to the store and use it to
build a developer community under your brand name.
http://wso2.com/products/api-manager/
*
Key Components
*
API Store
*
Dive in to API Store
๏ Where to find the API Store
{API Manager}/repository/deployment/server/jaggeryapps/store
๏ API Store is built on Jaggery
A framework to write web-apps and HTTP-focused web services for
all aspects of the application: front-end, communication, Server-
side logic and persistence in pure Javascript
http://jaggeryjs.org/
*
Dive in to API Store
๏ API Store Directory Structure
*
Dive in to API Store
๏ API Store Directory Structure
jaggery.conf -This file specifies the application specific
configurations. It has used to define the URL-mappings for the
pages, define welcome page,security-constraints,etc.
Templates- Contains views of the web-application. A template can
be considered as a re-usable UI block.
Blocks-This can be considered as the Controller part of the web
app. User actions on each View(template) are sent to the relevant
block and then it handle the incoming HTTP requests.
*
Dive in to API Store
๏ API Store Directory Structure
Modules- Can be considered as the 'Model' of the application. It
handles the state of the application.Contains references to all the
functions plugged through the java modules in to Store app..
Jagg -This directory is for handling all functionalities to control and
manage interactions among the modules,blocks and templates of
the jaggery application APIStore/Publisher.
*
Dive in to API Store
๏ API Store Request Flow
*
Customizing APIStore
๏ Changing the brand
○ Changing the banner
○ Changing the background colors
○ Changing the footer
๏ Create a new jaggery theme.
○ Changing the page layout
๏ Adding new Content.
○ Adding a new page
*
Changing the Banner
๏ To change the banner image Locate logo.png from
“store/site/themes/fancy/images” and replace it.
๏ To change the banner height and color find “styles-layout.css” in
“store/themes/fancy/css” and change the relevant styles.
*
Changing Colors & Styles
๏ The store uses bootstrap css to style some of the components and
to structure the page layout.
๏ Additional styles are specified in “styles-application.css” and
“styles-layout.css” found inside “store/site/themes/fancy/css”
directory.
๏ Use the above mention style sheets to customize the colors.
๏ You can include a bootstrap theme to change the styles of
bootstrap components.
*
Changing the Footer
๏ The footer is located in
“store/site/themes/fancy/templates/page/base/template.jag”
file.
๏ Open the template file and find a div with “footer-main” class
name.
๏ Change the content of the above footer as required.
*
Creating a new theme
๏ API Store has Themes and Sub-themes which can be use to
customize page layout and styles.
๏ If you want to change the page layout you can create a new
theme, and if you only need to change colors and banners better
to use subthemes.
๏ Easiest way to create a theme is to duplicate an existing theme
and change the templates & styles.
๏ To apply the new theme change the theme property in “site.
json” under “site/conf/” directory and refresh the application.
*
Creating a new Page
๏ Create new jag file under “store/site/pages/” directory.
Ex : aboutus.jag
๏ Create a directory under “store/site/themes/fancy” with the
page name and create initializer.jag and template.jag inside it.
๏ Add page content to the template.
๏ Create a path to the page in store/jaggery.conf.
*
Custom Error Pages
๏ Add to Store/jaggery.conf
*
API Publisher
*
Customizing API Publisher
๏ API Publisher is a Jaggery application located in -
{API Manager}/repository/deployment/server/jaggeryapps/publisher
๏ You can use the same methods used to customize the API Store to
customize API Publisher.
*
Internationalization Support
๏ Jaggery based String localization
Store/site/conf/locales/jaggery/locale_{locale-code}.json
http://jaggeryjs.org/apidocs/i18n.jag
๏ Client side Javascript based String localization
Store/site/conf/locales/js/i18nResources.json
http://i18next.com/
https://docs.wso2.org/display/AM160/Internationalization+and+Localization
*
Sample Customizations
*
Sample Customizations
*
Sample Customizations
*
Future
๏ Custom themes per tenants
๏ API Usage Statistics on Store
๏ Move the Store/Publisher to adhere to Caramel Framework built
on Jaggery
http://wso2.github.io/caramel
*
Future
๏ Migrate Store/Publisher to WSO2 Enterprise Store http://wso2.
com/products/enterprise-store
**
More Information
๏ http://wso2.com/products/api-manager/
๏ http://wso2.com/library/articles/2012/06/api-store-themes/
๏ http://wso2.com/library/tutorials/2012/09/customizing-api-store-
publisher-part1/
๏ http://wso2.com/library/tutorials/2013/08/customizing-api-
storepublisher-jaggery-applicationspart2/
**
Business Model
Contact us !

More Related Content

What's hot

Reverse proxy
Reverse proxyReverse proxy
Reverse proxy
tim4911
 

What's hot (17)

Okta-Certified-Professional-Hands-on-Configuration-Exam-Preparation-Guide-Jun...
Okta-Certified-Professional-Hands-on-Configuration-Exam-Preparation-Guide-Jun...Okta-Certified-Professional-Hands-on-Configuration-Exam-Preparation-Guide-Jun...
Okta-Certified-Professional-Hands-on-Configuration-Exam-Preparation-Guide-Jun...
 
Dell Boomi AtomSphere - A presentation by RapidValue Solutions
Dell Boomi AtomSphere  - A presentation by RapidValue SolutionsDell Boomi AtomSphere  - A presentation by RapidValue Solutions
Dell Boomi AtomSphere - A presentation by RapidValue Solutions
 
Microsoft Azure Security Overview - Microsoft - CSS Dallas Azure
Microsoft Azure Security Overview - Microsoft - CSS Dallas AzureMicrosoft Azure Security Overview - Microsoft - CSS Dallas Azure
Microsoft Azure Security Overview - Microsoft - CSS Dallas Azure
 
Bridal handbook pitch deck
Bridal handbook pitch deck Bridal handbook pitch deck
Bridal handbook pitch deck
 
Move your oracle apps to oci
Move your oracle apps to ociMove your oracle apps to oci
Move your oracle apps to oci
 
Café internet jennita.com
Café internet jennita.comCafé internet jennita.com
Café internet jennita.com
 
OpenID Connect vs. OpenID 1 & 2
OpenID Connect vs. OpenID 1 & 2OpenID Connect vs. OpenID 1 & 2
OpenID Connect vs. OpenID 1 & 2
 
Reverse proxy
Reverse proxyReverse proxy
Reverse proxy
 
Enhancing Microsoft Teams For The Digital Workplace - Teams10X
Enhancing Microsoft Teams For The Digital Workplace - Teams10XEnhancing Microsoft Teams For The Digital Workplace - Teams10X
Enhancing Microsoft Teams For The Digital Workplace - Teams10X
 
Cloud Computing : Revised Presentation
Cloud Computing : Revised PresentationCloud Computing : Revised Presentation
Cloud Computing : Revised Presentation
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Introduction to Business Process Management Suite
Introduction to Business Process Management SuiteIntroduction to Business Process Management Suite
Introduction to Business Process Management Suite
 
Cloud computing ppt by Binesh
Cloud computing ppt by BineshCloud computing ppt by Binesh
Cloud computing ppt by Binesh
 
Low code application platforms
Low code application platformsLow code application platforms
Low code application platforms
 
Search on encrypted data
Search on encrypted dataSearch on encrypted data
Search on encrypted data
 
Presentation cloud computing
Presentation cloud computingPresentation cloud computing
Presentation cloud computing
 
Devops Scorecard
Devops ScorecardDevops Scorecard
Devops Scorecard
 

Viewers also liked

Getting Started with the WSO2 manager
Getting Started with the WSO2  managerGetting Started with the WSO2  manager
Getting Started with the WSO2 manager
WSO2
 
Better Enterprise Integration With the WSO2 ESB 4.5.1
Better Enterprise Integration With the WSO2 ESB 4.5.1Better Enterprise Integration With the WSO2 ESB 4.5.1
Better Enterprise Integration With the WSO2 ESB 4.5.1
WSO2
 
How to Build, Manage, and Promote APIs
How to Build, Manage, and Promote APIsHow to Build, Manage, and Promote APIs
How to Build, Manage, and Promote APIs
WSO2
 
Scalable Deployment Patterns in WSO2 API Manager
Scalable Deployment Patterns in WSO2 API Manager Scalable Deployment Patterns in WSO2 API Manager
Scalable Deployment Patterns in WSO2 API Manager
WSO2
 
Key Management System Presentation: Jaguar
Key Management System Presentation: JaguarKey Management System Presentation: Jaguar
Key Management System Presentation: Jaguar
m_phull
 
WSO2 Identity Server
WSO2 Identity Server WSO2 Identity Server
WSO2 Identity Server
WSO2
 
SSO with the WSO2 Identity Server
SSO with the WSO2 Identity ServerSSO with the WSO2 Identity Server
SSO with the WSO2 Identity Server
WSO2
 

Viewers also liked (20)

Using a Third Party Key Management System with WSO2 API Manager
Using a Third Party Key Management System with WSO2 API ManagerUsing a Third Party Key Management System with WSO2 API Manager
Using a Third Party Key Management System with WSO2 API Manager
 
Mendeley Open API
Mendeley Open APIMendeley Open API
Mendeley Open API
 
WSO2Con USA 2017: Rise to the Challenge with WSO2 Identity Server and WSO2 AP...
WSO2Con USA 2017: Rise to the Challenge with WSO2 Identity Server and WSO2 AP...WSO2Con USA 2017: Rise to the Challenge with WSO2 Identity Server and WSO2 AP...
WSO2Con USA 2017: Rise to the Challenge with WSO2 Identity Server and WSO2 AP...
 
Best Practices for API Management
Best Practices for API Management Best Practices for API Management
Best Practices for API Management
 
Estratégia de APIs Abertas
Estratégia de APIs AbertasEstratégia de APIs Abertas
Estratégia de APIs Abertas
 
Getting Started with the WSO2 manager
Getting Started with the WSO2  managerGetting Started with the WSO2  manager
Getting Started with the WSO2 manager
 
Better Enterprise Integration With the WSO2 ESB 4.5.1
Better Enterprise Integration With the WSO2 ESB 4.5.1Better Enterprise Integration With the WSO2 ESB 4.5.1
Better Enterprise Integration With the WSO2 ESB 4.5.1
 
How to Build, Manage, and Promote APIs
How to Build, Manage, and Promote APIsHow to Build, Manage, and Promote APIs
How to Build, Manage, and Promote APIs
 
Highly Available Graphite
Highly Available GraphiteHighly Available Graphite
Highly Available Graphite
 
Scalable Deployment Patterns in WSO2 API Manager
Scalable Deployment Patterns in WSO2 API Manager Scalable Deployment Patterns in WSO2 API Manager
Scalable Deployment Patterns in WSO2 API Manager
 
Understanding OpenID
Understanding OpenIDUnderstanding OpenID
Understanding OpenID
 
Key Management System Presentation: Jaguar
Key Management System Presentation: JaguarKey Management System Presentation: Jaguar
Key Management System Presentation: Jaguar
 
WSO2 para o Governo Brasileiro
WSO2 para o  Governo BrasileiroWSO2 para o  Governo Brasileiro
WSO2 para o Governo Brasileiro
 
WSO2 Identity Server
WSO2 Identity ServerWSO2 Identity Server
WSO2 Identity Server
 
WSO2 Identity Server
WSO2 Identity Server WSO2 Identity Server
WSO2 Identity Server
 
API as a Growth Tool
API as a Growth ToolAPI as a Growth Tool
API as a Growth Tool
 
Web API Basics
Web API BasicsWeb API Basics
Web API Basics
 
The 5 API Monetization Models and How to Measure Their Success
The 5 API Monetization Models and How to Measure Their SuccessThe 5 API Monetization Models and How to Measure Their Success
The 5 API Monetization Models and How to Measure Their Success
 
How to Enable Monetization of Your API Ecosystem
How to Enable Monetization of Your API EcosystemHow to Enable Monetization of Your API Ecosystem
How to Enable Monetization of Your API Ecosystem
 
SSO with the WSO2 Identity Server
SSO with the WSO2 Identity ServerSSO with the WSO2 Identity Server
SSO with the WSO2 Identity Server
 

Similar to Customizing the API Store & Publisher in WSO2 API Manager

I Store For Beginners
I Store For BeginnersI Store For Beginners
I Store For Beginners
Rahul Saxena
 
Build single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEMBuild single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEM
connectwebex
 
Pluggable patterns
Pluggable patternsPluggable patterns
Pluggable patterns
Corey Oordt
 
Restful Integration with WSO2 ESB
Restful Integration with WSO2 ESB Restful Integration with WSO2 ESB
Restful Integration with WSO2 ESB
WSO2
 
Java Script from Browser to Server
Java Script from Browser to ServerJava Script from Browser to Server
Java Script from Browser to Server
WSO2
 
Scalable deployment options in WSO2 API Manager
Scalable deployment options in WSO2 API ManagerScalable deployment options in WSO2 API Manager
Scalable deployment options in WSO2 API Manager
WSO2
 

Similar to Customizing the API Store & Publisher in WSO2 API Manager (20)

Advanced SharePoint 2013 Site Administration
Advanced SharePoint 2013 Site AdministrationAdvanced SharePoint 2013 Site Administration
Advanced SharePoint 2013 Site Administration
 
I Store For Beginners
I Store For BeginnersI Store For Beginners
I Store For Beginners
 
API designing with WSO2 API Manager
API designing with WSO2 API ManagerAPI designing with WSO2 API Manager
API designing with WSO2 API Manager
 
Build single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEMBuild single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEM
 
Build single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEMBuild single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEM
 
Build single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEMBuild single page applications using AngularJS on AEM
Build single page applications using AngularJS on AEM
 
Pluggable patterns
Pluggable patternsPluggable patterns
Pluggable patterns
 
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slides
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slidesKeep Your Code Organized! WordCamp Montreal 2013 Presentation slides
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slides
 
How App Indexation Works
How App Indexation WorksHow App Indexation Works
How App Indexation Works
 
ASP.NEt MVC and Angular What a couple
ASP.NEt MVC and Angular What a coupleASP.NEt MVC and Angular What a couple
ASP.NEt MVC and Angular What a couple
 
Restful Integration with WSO2 ESB
Restful Integration with WSO2 ESB Restful Integration with WSO2 ESB
Restful Integration with WSO2 ESB
 
MCA 6th Sem Project Report
MCA 6th Sem Project ReportMCA 6th Sem Project Report
MCA 6th Sem Project Report
 
Java Script from Browser to Server
Java Script from Browser to ServerJava Script from Browser to Server
Java Script from Browser to Server
 
Essential Knowledge for SharePoint Add-Ins
Essential Knowledge for SharePoint Add-InsEssential Knowledge for SharePoint Add-Ins
Essential Knowledge for SharePoint Add-Ins
 
Creating a content managed facebook app
Creating a content managed facebook appCreating a content managed facebook app
Creating a content managed facebook app
 
Angular vs React: Building modern SharePoint interfaces with SPFx
Angular vs React: Building modern SharePoint interfaces with SPFxAngular vs React: Building modern SharePoint interfaces with SPFx
Angular vs React: Building modern SharePoint interfaces with SPFx
 
Scalable deployment options in WSO2 API Manager
Scalable deployment options in WSO2 API ManagerScalable deployment options in WSO2 API Manager
Scalable deployment options in WSO2 API Manager
 
Adobe Experience Manager Core Components
Adobe Experience Manager Core ComponentsAdobe Experience Manager Core Components
Adobe Experience Manager Core Components
 
Cordova training : Day 5 - UI development using Framework7
Cordova training : Day 5 - UI development using Framework7Cordova training : Day 5 - UI development using Framework7
Cordova training : Day 5 - UI development using Framework7
 
Extensible Api Management with WSO2 API Manager
Extensible Api Management with WSO2 API ManagerExtensible Api Management with WSO2 API Manager
Extensible Api Management with WSO2 API Manager
 

More from WSO2

More from WSO2 (20)

Driving Innovation: Scania's API Revolution with WSO2
Driving Innovation: Scania's API Revolution with WSO2Driving Innovation: Scania's API Revolution with WSO2
Driving Innovation: Scania's API Revolution with WSO2
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AI
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
WSO2CON 2024 - Elevating the Integration Game to the Cloud
WSO2CON 2024 - Elevating the Integration Game to the CloudWSO2CON 2024 - Elevating the Integration Game to the Cloud
WSO2CON 2024 - Elevating the Integration Game to the Cloud
 
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & InnovationWSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
 
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and ApplicationsWSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
WSO2CON 2024 - Architecting AI in the Enterprise: APIs and Applications
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
WSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital BusinessesWSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital Businesses
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of TransformationWSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
WSO2CON 2024 - Designing Event-Driven Enterprises: Stories of Transformation
 
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 

Recently uploaded

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 

Customizing the API Store & Publisher in WSO2 API Manager

  • 1. Last Updated: Jan. 2014 Lalaji Sureshika & Joseph Fonseka Customizing the API Store & Publisher WSO2 API Manager Team
  • 2. ** About the Presenters ๏ Joseph joined WSO2 in September 2013. He is a Senior Tech Lead in the WSO2 API Manager team where he focuses on improving the UX of the API Manager. In addition to his product development efforts he is also a contributor to the Sahana and OpenEvsys open- source projects. He is also a FOSS advocate. ๏ Lalaji joined WSO2 in September 2010. She is a senior software engineer in the WSO2 API Manager team where her main focus is on the development of the product. In addition to her product development efforts she has provided development support and technology consulting on customer engagements, including customer QuickStart programs.
  • 3. * About WSO2 * ๏ Global enterprise, founded in 2005 by acknowledged leaders in XML, web services technologies, standards and open source ๏ Provides only open source platform-as-a-service for private, public and hybrid cloud deployments ๏ All WSO2 products are 100% open source and released under the Apache License Version 2.0. ๏ Is an Active Member of OASIS, Cloud Security Alliance, OSGi Alliance, AMQP Working Group, OpenID Foundation and W3C. ๏ Driven by Innovation ๏ Launched first open source API Management solution in 2012 ๏ Launched App Factory in 2Q 2013 ๏ Launched Enterprise Store and first open source Mobile solution in 4Q 2013
  • 5. * Agenda ๏ Introduction to WSO2 API Manager ๏ Dive in to API Store ๏ Customizing API Store & Publisher ๏ Localization ๏ Sample Customizations ๏ Future
  • 6. * Introduction ๏ WSO2 API Manager is a complete solution for publishing and managing APIs. ๏ It comes with an out of the box API Store which allows you to publish and advertise your APIs. ๏ You can easily customize the API Store to reflect your company's brand. ๏ Also you can add targeted content to the store and use it to build a developer community under your brand name. http://wso2.com/products/api-manager/
  • 9. * Dive in to API Store ๏ Where to find the API Store {API Manager}/repository/deployment/server/jaggeryapps/store ๏ API Store is built on Jaggery A framework to write web-apps and HTTP-focused web services for all aspects of the application: front-end, communication, Server- side logic and persistence in pure Javascript http://jaggeryjs.org/
  • 10. * Dive in to API Store ๏ API Store Directory Structure
  • 11. * Dive in to API Store ๏ API Store Directory Structure jaggery.conf -This file specifies the application specific configurations. It has used to define the URL-mappings for the pages, define welcome page,security-constraints,etc. Templates- Contains views of the web-application. A template can be considered as a re-usable UI block. Blocks-This can be considered as the Controller part of the web app. User actions on each View(template) are sent to the relevant block and then it handle the incoming HTTP requests.
  • 12. * Dive in to API Store ๏ API Store Directory Structure Modules- Can be considered as the 'Model' of the application. It handles the state of the application.Contains references to all the functions plugged through the java modules in to Store app.. Jagg -This directory is for handling all functionalities to control and manage interactions among the modules,blocks and templates of the jaggery application APIStore/Publisher.
  • 13. * Dive in to API Store ๏ API Store Request Flow
  • 14. * Customizing APIStore ๏ Changing the brand ○ Changing the banner ○ Changing the background colors ○ Changing the footer ๏ Create a new jaggery theme. ○ Changing the page layout ๏ Adding new Content. ○ Adding a new page
  • 15. * Changing the Banner ๏ To change the banner image Locate logo.png from “store/site/themes/fancy/images” and replace it. ๏ To change the banner height and color find “styles-layout.css” in “store/themes/fancy/css” and change the relevant styles.
  • 16. * Changing Colors & Styles ๏ The store uses bootstrap css to style some of the components and to structure the page layout. ๏ Additional styles are specified in “styles-application.css” and “styles-layout.css” found inside “store/site/themes/fancy/css” directory. ๏ Use the above mention style sheets to customize the colors. ๏ You can include a bootstrap theme to change the styles of bootstrap components.
  • 17. * Changing the Footer ๏ The footer is located in “store/site/themes/fancy/templates/page/base/template.jag” file. ๏ Open the template file and find a div with “footer-main” class name. ๏ Change the content of the above footer as required.
  • 18. * Creating a new theme ๏ API Store has Themes and Sub-themes which can be use to customize page layout and styles. ๏ If you want to change the page layout you can create a new theme, and if you only need to change colors and banners better to use subthemes. ๏ Easiest way to create a theme is to duplicate an existing theme and change the templates & styles. ๏ To apply the new theme change the theme property in “site. json” under “site/conf/” directory and refresh the application.
  • 19. * Creating a new Page ๏ Create new jag file under “store/site/pages/” directory. Ex : aboutus.jag ๏ Create a directory under “store/site/themes/fancy” with the page name and create initializer.jag and template.jag inside it. ๏ Add page content to the template. ๏ Create a path to the page in store/jaggery.conf.
  • 20. * Custom Error Pages ๏ Add to Store/jaggery.conf
  • 22. * Customizing API Publisher ๏ API Publisher is a Jaggery application located in - {API Manager}/repository/deployment/server/jaggeryapps/publisher ๏ You can use the same methods used to customize the API Store to customize API Publisher.
  • 23. * Internationalization Support ๏ Jaggery based String localization Store/site/conf/locales/jaggery/locale_{locale-code}.json http://jaggeryjs.org/apidocs/i18n.jag ๏ Client side Javascript based String localization Store/site/conf/locales/js/i18nResources.json http://i18next.com/ https://docs.wso2.org/display/AM160/Internationalization+and+Localization
  • 27. * Future ๏ Custom themes per tenants ๏ API Usage Statistics on Store ๏ Move the Store/Publisher to adhere to Caramel Framework built on Jaggery http://wso2.github.io/caramel
  • 28. * Future ๏ Migrate Store/Publisher to WSO2 Enterprise Store http://wso2. com/products/enterprise-store
  • 29. ** More Information ๏ http://wso2.com/products/api-manager/ ๏ http://wso2.com/library/articles/2012/06/api-store-themes/ ๏ http://wso2.com/library/tutorials/2012/09/customizing-api-store- publisher-part1/ ๏ http://wso2.com/library/tutorials/2013/08/customizing-api- storepublisher-jaggery-applicationspart2/