Build and Package
Lightning Components for
Lightning Exchange
Emily Hudson, Valerie Lim
ISV Technical Evangelists
@EmilySFDC @ValerieSFDC
Forward-Looking Statements
Statement under the Private Securities Litigation Reform Act of 1995:
This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties
materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed
or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-
looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any
statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new,
planned, or upgraded services or technology developments and customer contracts or use of our services.
The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new
functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our
operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any
litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our
relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our
service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger
enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our
annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These
documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our
Web site.
Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available
and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features
that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
1 2 3 4 5 6
Package ManageDistribute
Security
Review
Build your
Component
Partners
Install
Customers
Distribution Steps
Scale App Development with Lightning Components
Build faster with a modern component framework
Building Blocks for Apps
Build apps and pages with self-contained
components with HTML, JavaScript and CSS
Faster Loading
Reduced server trips with client-side caching and
shared transport layer
Scale, Share, and Reuse
Save time and development resources by reusing
components to build apps faster.
Easily Install Components from the Lightning Exchange
The Enterprise Marketplace for Lightning Components
Build or Buy
Assemble apps easily with pre-built Components from
Salesforce partners that work for any device
Interoperable components
Event-driven architecture allows interaction between
Components built by different developers
Share, Sell, and Buy with Packaging
Easily distribute components with Managed Packages. Users
install components with a few clicks
Our Mission: Cloud Computing Driver,
Catalyst, and Evangelist
“Salesforce is a Platform Company.
Period.”
TechCrunch
2M
Installs
20152006
AppsontheAppExchange
1M
Installs
AppExchange
Launches
3.8M+
Installs3K+
AppExchange
Apps
Building Lightning Components
Types of Components
Global
Not context specific
Can access data, but
does not dynamically
change
Can be dragged onto
any page
Ex: calendar, speed
dialer, calculator, task
manager, local time
viewer, Company
hierarchy
Record Scoped
Context specific
Data view changes
based on context /
page
Can be dragged onto
Record Home and
Community page
Ex: project
management,
Lightning charts,
Sales stats viewer
Lightning Component Display Options
Customers can leverage your component in multiple ways
Record Home
Community
App Home
Lightning App
Customize Record Home
Almost all
standard objects
All custom objects
Uses:
Global
Components
Record Scoped
Components
Customize Community
Customize Community
page
Drag and drop from
Community Builder
Uses:
Global Components
Record Scoped
Components
Customize App Home
Custom Home Page
Per-profile page
assignment
Uses:
Global Components
Customize Lightning App
Customize Mobile view
Create tab for Lightning Pages
Drag and drop in App Builder
Uses:
Global Components
Packaging and Distribution
1 2 3 4 5 6
Package ManageDistribute
Security
Review
Build your
Component
Partners
Install
Customers
Distribution Steps
Demo
Installing a Lightning Component from
the Lightning Exchange
1 2 3 4 5 6
Package ManageDistribute
Security
Review
Build your
Component
Partners
Install
Customers
Distribution Steps
Free
No Upgrades
No IP Protection
Free or Paid
Upgrades
Choose price structure (one-time, yearly)
Use Checkout
ISV program benefits (push upgrades,
License Management App, Subscriber
Support Console, etc)
Packaging Your Component Before Distribution
Managed PackageUnmanaged Package
1 2 3 4 5 6
Package ManageDistribute
Security
Review
Build your
Component
Partners
Install
Customers
Distribution Steps
Security Review
Basic approach:
● Identify potential product vulnerability
points at design time
● Put defenses in place to cover all
possible input paths
● Institute coding standards to control risk
from the beginning
Meet the security expectations of enterprise
customers
Incorporate security into your Application Lifecycle Management process
Secure Development:
● Test for the OWASP top 10
● Test for Record and Field Level Security Enforcement
○ http://sforce.co/1Y32v3k
● See full list of security considerations here: http://bit.ly/LC-Security
Security Review Submission:
● Security Review of paid components is $1000, no charge for free components
● Each listing (bundle or individual component) has the same price for Security Review
● Create a test environment with the component configured/accessible ready for the tester
● Third party frameworks are not supported in Lightning Components
https://developer.salesforce.com/page/Lightning_Security
Considerations to pass Security Review
Lightning LockerService
Keeps 3rd party authored
JavaScript and CSS in a secure
sandbox
Eliminate DOM scraping
vulnerabilities
Mitigates impact of one developer’s
component breaking another
developer’s component
LockerService documentation on Partner Community
https://developer.salesforce.com/blogs/developer-
relations/2016/04/introducing-lockerservice-lightning-
components.html
Browser Security Architecture for the Lightning Platform
Salesforce
Application
JavaScript
3rd Party
Authored
JavaScript
Without LockerService
Salesforce
Application
JavaScript
3rd Party
Authored
JavaScript
With LockerService
1 2 3 4 5 6
Package ManageDistribute
Security
Review
Build your
Component
Partners
Install
Customers
Distribution Steps
Demo
Distributing a Lightning Component
on the Lightning Exchange
Use Trialforce to Provide Trials for Customers
ISVs choose trial length, we take care of the rest.
ISVs can distribute free trials of their apps using:
● Custom webform
● Environment Hub
● SignUp API
● AppExchange
A Simple Way to Provision Free Trials
Collects credit card
information using Stripe
• In Summer, will accept ACH payments
Manages trial periods
Processes changes
Automatically updates
licenses in your LMA
Use Checkout to Charge for Your Component
Best Practices for Charging for Components
How should you charge for Components?
How should you license your Component?
One-Time Charge Annual Charge
Use one time pricing for components
that are limited in scope and do not
require significant maintenance over
time
Use annual pricing for more complex
components that will need to be supported
over time
Site-wide licensing is preferred
1 2 3 4 5 6
Package ManageDistribute
Security
Review
Build your
Component
Partners
Install
Customers
Distribution Steps
Use License Management App to Manage Customers
Control licensing and access to components from
customers’ orgs
View lead and license records for each installation of your
package
Records basic information about customers or prospects
who have installed
Ability to support partner’s customers through the
Subscriber console
Best Practices throughout the Process
Building
Choose type (global or
record scoped)
Choose display option
(record home, app home,
community, lightning app)
Follow Security Review
and LockerService
guidelines
Packaging
Test your component in
target environment
Use a managed package
to benefit from ISV tools
Distribution
Choose pricing options
Use free trial
Spend time creating
polished Lightning
Exchange listing
Manage customers using
License Management App
Next Steps & Resources
Free Trial of your Component
● Trialforce
Collect Leads from Installs of your components
● License Management App
Monetizing your Component
● Payment tool “Checkout”
Upgrading your Component
● Push Upgrades
Technical Benefits for ISVs in the Partner Program
Program Benefits for ISVs in the Partner Program
Partner Community
New ISV program details
App Academy program training for all ISVs
Collaborate with program staff & other partners
Partner Roadmap Webinars
Office Hours
Sales & Marketing resources
Support
http://p.force.com/isvprogram
New ISV Module on Trailhead
Earn your badge!
https://trailhead.salesforce.com/module/isvforce_basics
thank y u

Build and Package Lightning Components for Lightning Exchange

  • 1.
    Build and Package LightningComponents for Lightning Exchange Emily Hudson, Valerie Lim ISV Technical Evangelists @EmilySFDC @ValerieSFDC
  • 2.
    Forward-Looking Statements Statement underthe Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward- looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 3.
    1 2 34 5 6 Package ManageDistribute Security Review Build your Component Partners Install Customers Distribution Steps
  • 4.
    Scale App Developmentwith Lightning Components Build faster with a modern component framework Building Blocks for Apps Build apps and pages with self-contained components with HTML, JavaScript and CSS Faster Loading Reduced server trips with client-side caching and shared transport layer Scale, Share, and Reuse Save time and development resources by reusing components to build apps faster.
  • 5.
    Easily Install Componentsfrom the Lightning Exchange The Enterprise Marketplace for Lightning Components Build or Buy Assemble apps easily with pre-built Components from Salesforce partners that work for any device Interoperable components Event-driven architecture allows interaction between Components built by different developers Share, Sell, and Buy with Packaging Easily distribute components with Managed Packages. Users install components with a few clicks
  • 6.
    Our Mission: CloudComputing Driver, Catalyst, and Evangelist “Salesforce is a Platform Company. Period.” TechCrunch 2M Installs 20152006 AppsontheAppExchange 1M Installs AppExchange Launches 3.8M+ Installs3K+ AppExchange Apps
  • 7.
  • 8.
    Types of Components Global Notcontext specific Can access data, but does not dynamically change Can be dragged onto any page Ex: calendar, speed dialer, calculator, task manager, local time viewer, Company hierarchy Record Scoped Context specific Data view changes based on context / page Can be dragged onto Record Home and Community page Ex: project management, Lightning charts, Sales stats viewer
  • 9.
    Lightning Component DisplayOptions Customers can leverage your component in multiple ways Record Home Community App Home Lightning App
  • 10.
    Customize Record Home Almostall standard objects All custom objects Uses: Global Components Record Scoped Components
  • 11.
    Customize Community Customize Community page Dragand drop from Community Builder Uses: Global Components Record Scoped Components
  • 12.
    Customize App Home CustomHome Page Per-profile page assignment Uses: Global Components
  • 13.
    Customize Lightning App CustomizeMobile view Create tab for Lightning Pages Drag and drop in App Builder Uses: Global Components
  • 14.
  • 15.
    1 2 34 5 6 Package ManageDistribute Security Review Build your Component Partners Install Customers Distribution Steps
  • 16.
    Demo Installing a LightningComponent from the Lightning Exchange
  • 17.
    1 2 34 5 6 Package ManageDistribute Security Review Build your Component Partners Install Customers Distribution Steps
  • 18.
    Free No Upgrades No IPProtection Free or Paid Upgrades Choose price structure (one-time, yearly) Use Checkout ISV program benefits (push upgrades, License Management App, Subscriber Support Console, etc) Packaging Your Component Before Distribution Managed PackageUnmanaged Package
  • 19.
    1 2 34 5 6 Package ManageDistribute Security Review Build your Component Partners Install Customers Distribution Steps
  • 20.
    Security Review Basic approach: ●Identify potential product vulnerability points at design time ● Put defenses in place to cover all possible input paths ● Institute coding standards to control risk from the beginning Meet the security expectations of enterprise customers Incorporate security into your Application Lifecycle Management process
  • 21.
    Secure Development: ● Testfor the OWASP top 10 ● Test for Record and Field Level Security Enforcement ○ http://sforce.co/1Y32v3k ● See full list of security considerations here: http://bit.ly/LC-Security Security Review Submission: ● Security Review of paid components is $1000, no charge for free components ● Each listing (bundle or individual component) has the same price for Security Review ● Create a test environment with the component configured/accessible ready for the tester ● Third party frameworks are not supported in Lightning Components https://developer.salesforce.com/page/Lightning_Security Considerations to pass Security Review
  • 22.
    Lightning LockerService Keeps 3rdparty authored JavaScript and CSS in a secure sandbox Eliminate DOM scraping vulnerabilities Mitigates impact of one developer’s component breaking another developer’s component LockerService documentation on Partner Community https://developer.salesforce.com/blogs/developer- relations/2016/04/introducing-lockerservice-lightning- components.html Browser Security Architecture for the Lightning Platform Salesforce Application JavaScript 3rd Party Authored JavaScript Without LockerService Salesforce Application JavaScript 3rd Party Authored JavaScript With LockerService
  • 23.
    1 2 34 5 6 Package ManageDistribute Security Review Build your Component Partners Install Customers Distribution Steps
  • 24.
    Demo Distributing a LightningComponent on the Lightning Exchange
  • 25.
    Use Trialforce toProvide Trials for Customers ISVs choose trial length, we take care of the rest. ISVs can distribute free trials of their apps using: ● Custom webform ● Environment Hub ● SignUp API ● AppExchange A Simple Way to Provision Free Trials
  • 26.
    Collects credit card informationusing Stripe • In Summer, will accept ACH payments Manages trial periods Processes changes Automatically updates licenses in your LMA Use Checkout to Charge for Your Component
  • 27.
    Best Practices forCharging for Components How should you charge for Components? How should you license your Component? One-Time Charge Annual Charge Use one time pricing for components that are limited in scope and do not require significant maintenance over time Use annual pricing for more complex components that will need to be supported over time Site-wide licensing is preferred
  • 28.
    1 2 34 5 6 Package ManageDistribute Security Review Build your Component Partners Install Customers Distribution Steps
  • 29.
    Use License ManagementApp to Manage Customers Control licensing and access to components from customers’ orgs View lead and license records for each installation of your package Records basic information about customers or prospects who have installed Ability to support partner’s customers through the Subscriber console
  • 30.
    Best Practices throughoutthe Process Building Choose type (global or record scoped) Choose display option (record home, app home, community, lightning app) Follow Security Review and LockerService guidelines Packaging Test your component in target environment Use a managed package to benefit from ISV tools Distribution Choose pricing options Use free trial Spend time creating polished Lightning Exchange listing Manage customers using License Management App
  • 31.
    Next Steps &Resources
  • 32.
    Free Trial ofyour Component ● Trialforce Collect Leads from Installs of your components ● License Management App Monetizing your Component ● Payment tool “Checkout” Upgrading your Component ● Push Upgrades Technical Benefits for ISVs in the Partner Program
  • 33.
    Program Benefits forISVs in the Partner Program Partner Community New ISV program details App Academy program training for all ISVs Collaborate with program staff & other partners Partner Roadmap Webinars Office Hours Sales & Marketing resources Support http://p.force.com/isvprogram
  • 34.
    New ISV Moduleon Trailhead Earn your badge! https://trailhead.salesforce.com/module/isvforce_basics
  • 35.