SlideShare a Scribd company logo
1 of 51
Apps: Start to Finish
 Building an App for Drupal 7 Distributions
Who’s Here
  Karen Borchert    Jay Callicott
 Product Director    Developer
Phase2 Technology   Mediacurrent
Today’s Goal
Show how Mediacurrent built an Events
app for the OpenPublic distribution.
What is an app?

The Apps module wraps a     layer of
usability (discoverability, installation,
  configuration, demo content) around
existing   Drupal functionality.
Are Apps &
Features the
same thing?
Why Apps for Distros?
➡   Keeps distributions lighter
➡   Provides specific functionality for
    specific use cases
➡   Allows for multiple third party
    solutions, rather than giving
    preference to one
Five Big Steps:
    1. Plan
    2. Build
    3. Package
    4. Submit it
    5. Go Live
PLAN.
An app identifies a
distinct problem for
a specific audience,
    and solves it
    completely.
1. What Problem
Are You Solving?
Problem
➡   Most public institutions have events
➡   Institutions need a way to publicize
    information about events in a way that is
    accessible to the public on their web site
➡   OpenPublic does not accomplish this “out
    of the box”
2. Who is this
   app for?
Audience
Public institutions...
➡   Nonprofit organizations
➡   Government agencies
➡   Government departments
...who regularly hold events and want to
inform the public about them.
3. How will this app
     be used?
Use Case: Public Institution
➡   Institution has an event to publicize.
➡   Site administrator creates an event:
➡    where
➡    when
➡    description
➡    who

➡   Event Appears on calendar.
4. Which
distribution is it for?
Which Distribution?
Checklist #1
✓ Does it solve a specific, discrete problem?
✓ Does it solve a problem for a specific
   audience?
✓ Does it solve the problem completely?
✓ Can you tweet it? (describe it in 140
   characters or less)
“with new Events App by
@mediacurrent, public sector orgs
now have a way to publicize events
 on @OpenPublic with calendar and
         events listings.”
BUILD.
5. What are the
 components?
Modules Used
    Existing:
➡   Address Field
➡   Views 3x
    New:
➡   None needed
6. Can we
  contribute
anything back?
Anything to Contribute?

➡   This solution relies on only contributed
    modules
➡   The apps, features themselves are
    open source
7. Which pieces do
we need to build?
Components to Build


➡   Event content type
➡   Events view
➡   A little css
8. Ok, Build it!
Checklist #2

✓ Did you seek out existing modules?
✓ Did you contribute back new modules
   to Drupal.org?
✓ Is it kit compliant?
✓ Does it address the defined use cases?
PACKAGE.
9. Gather the Assets
Manifest.app




Logo
               Screenshot
openpublic_event.info
10. Build
configuration page
11. Build the default
      content
12. Test it!
Testing Procedure
➡   Load a fresh database (Drop old one
    first)
➡   Remove everything from modules
    directory except your app
➡   Have “Development server”enabled
➡   Remove everything from temp
    directory / update-*
Checklist #3
✓ Does the app install?
✓ Can you configure the app?
✓ Can you turn on and off default
  content?
✓ Can you uninstall it?
✓ Does it show up everywhere it's
  supposed to on installation, and
  disappear as needed on uninstall?
SUBMIT IT.
13. Put it
somewhere
Mediacurrent Feature Server
14. Submit App
What We Sent:



Zipped file with:
➡   Manifest.app file
➡   Images
How does a distro owner
  decide which apps?
      ✓ Sound Architecture
      ✓ Stable Construction
      ✓ Reliable Performance
      ✓ Compliance
      ✓ Open App Standard
GO LIVE!
Get Started

➡   Download OpenPublic Beta3
➡   Check out documentation on
    community.openpublicapp.com
➡   Contact the OpenPublic and/or
    OpenPublish team at Phase2

More Related Content

What's hot

What's hot (12)

Project
ProjectProject
Project
 
iOS 8 App Extensions
iOS 8 App ExtensionsiOS 8 App Extensions
iOS 8 App Extensions
 
iOS extension
iOS extensioniOS extension
iOS extension
 
iOS 8 Action Extension Training
iOS 8 Action Extension TrainingiOS 8 Action Extension Training
iOS 8 Action Extension Training
 
Demo PPT and Hangout
Demo PPT and HangoutDemo PPT and Hangout
Demo PPT and Hangout
 
Create first-web application-googleappengine
Create first-web application-googleappengineCreate first-web application-googleappengine
Create first-web application-googleappengine
 
Android M - Getting Started
Android M - Getting StartedAndroid M - Getting Started
Android M - Getting Started
 
Android N multi window
Android N multi windowAndroid N multi window
Android N multi window
 
Mobile deep links testing: keep calm and stay focused, Діана Пінчук
Mobile deep links testing: keep calm and stay focused, Діана ПінчукMobile deep links testing: keep calm and stay focused, Діана Пінчук
Mobile deep links testing: keep calm and stay focused, Діана Пінчук
 
NuGet vs Maven
NuGet vs MavenNuGet vs Maven
NuGet vs Maven
 
Productivity tools
Productivity toolsProductivity tools
Productivity tools
 
Katie leclair 8890079_pechakucha_may8
Katie leclair 8890079_pechakucha_may8Katie leclair 8890079_pechakucha_may8
Katie leclair 8890079_pechakucha_may8
 

Similar to Apps: Start to Finish

Jose l ugia 6 wunderkinder, momenta
Jose l ugia  6 wunderkinder, momentaJose l ugia  6 wunderkinder, momenta
Jose l ugia 6 wunderkinder, momenta
apps4allru
 
CSCI-383 Lecture 5-6-7: Object-Oriented Design
CSCI-383 Lecture 5-6-7: Object-Oriented DesignCSCI-383 Lecture 5-6-7: Object-Oriented Design
CSCI-383 Lecture 5-6-7: Object-Oriented Design
JI Ruan
 

Similar to Apps: Start to Finish (20)

Repertoire of contributions hacktoberfest
Repertoire of contributions hacktoberfestRepertoire of contributions hacktoberfest
Repertoire of contributions hacktoberfest
 
Jose l ugia 6 wunderkinder, momenta
Jose l ugia  6 wunderkinder, momentaJose l ugia  6 wunderkinder, momenta
Jose l ugia 6 wunderkinder, momenta
 
Build your cross-platform service in a week with App Engine
Build your cross-platform service in a week with App EngineBuild your cross-platform service in a week with App Engine
Build your cross-platform service in a week with App Engine
 
Mobile application Project report B.Tech Final year
Mobile application Project report B.Tech Final yearMobile application Project report B.Tech Final year
Mobile application Project report B.Tech Final year
 
SahilaMirajkar
SahilaMirajkarSahilaMirajkar
SahilaMirajkar
 
android development training in mumbai
android development training in mumbaiandroid development training in mumbai
android development training in mumbai
 
Mobile Application Project report
Mobile Application Project reportMobile Application Project report
Mobile Application Project report
 
Processus de Développement des Apps Mobiles
Processus de Développement des Apps MobilesProcessus de Développement des Apps Mobiles
Processus de Développement des Apps Mobiles
 
Develop MS Office Plugins
Develop MS Office Plugins Develop MS Office Plugins
Develop MS Office Plugins
 
Why Choose Flutter for IoT_.pptx
Why Choose Flutter for IoT_.pptxWhy Choose Flutter for IoT_.pptx
Why Choose Flutter for IoT_.pptx
 
itslearning App Library dag voor partners - Tim Remmers - 12 juni 2012
itslearning App Library dag voor partners - Tim Remmers - 12 juni 2012itslearning App Library dag voor partners - Tim Remmers - 12 juni 2012
itslearning App Library dag voor partners - Tim Remmers - 12 juni 2012
 
20120612 itslearning app library dag
20120612 itslearning app library dag20120612 itslearning app library dag
20120612 itslearning app library dag
 
How Custom Software Development is Transforming the Traditional Business Prac...
How Custom Software Development is Transforming the Traditional Business Prac...How Custom Software Development is Transforming the Traditional Business Prac...
How Custom Software Development is Transforming the Traditional Business Prac...
 
Build an app from scratch using teams app studio for ms teams
Build an app from scratch using teams app studio for ms teamsBuild an app from scratch using teams app studio for ms teams
Build an app from scratch using teams app studio for ms teams
 
CSCI-383 Lecture 5-6-7: Object-Oriented Design
CSCI-383 Lecture 5-6-7: Object-Oriented DesignCSCI-383 Lecture 5-6-7: Object-Oriented Design
CSCI-383 Lecture 5-6-7: Object-Oriented Design
 
Kotlin for Android App Development Presentation
Kotlin for Android App Development PresentationKotlin for Android App Development Presentation
Kotlin for Android App Development Presentation
 
User Story Mapping (2008)
User Story Mapping (2008)User Story Mapping (2008)
User Story Mapping (2008)
 
Mobile Web vs. Native Apps
Mobile Web vs. Native AppsMobile Web vs. Native Apps
Mobile Web vs. Native Apps
 
Open Intents - Android Intents Mechanism and Dependency Management
Open Intents - Android Intents Mechanism and Dependency ManagementOpen Intents - Android Intents Mechanism and Dependency Management
Open Intents - Android Intents Mechanism and Dependency Management
 
How to create a popular productivity app in 2022
How to create a popular productivity app in 2022 How to create a popular productivity app in 2022
How to create a popular productivity app in 2022
 

More from Phase2

A FUTURE-FOCUSED DIGITAL PLATFORM WITH DRUPAL 8
A FUTURE-FOCUSED DIGITAL PLATFORM WITH DRUPAL 8A FUTURE-FOCUSED DIGITAL PLATFORM WITH DRUPAL 8
A FUTURE-FOCUSED DIGITAL PLATFORM WITH DRUPAL 8
Phase2
 
The Yes, No, and Maybe of "Can We Build That With Drupal?"
The Yes, No, and Maybe of "Can We Build That With Drupal?"The Yes, No, and Maybe of "Can We Build That With Drupal?"
The Yes, No, and Maybe of "Can We Build That With Drupal?"
Phase2
 

More from Phase2 (20)

Phase2 Health and Wellness Brochure
Phase2 Health and Wellness BrochurePhase2 Health and Wellness Brochure
Phase2 Health and Wellness Brochure
 
A Modern Digital Experience Platform
A Modern Digital Experience PlatformA Modern Digital Experience Platform
A Modern Digital Experience Platform
 
Beyond websites: A Modern Digital Experience Platform
Beyond websites: A Modern Digital Experience PlatformBeyond websites: A Modern Digital Experience Platform
Beyond websites: A Modern Digital Experience Platform
 
Omnichannel For Government
Omnichannel For Government Omnichannel For Government
Omnichannel For Government
 
Bad camp2016 Release Management On Live Websites
Bad camp2016 Release Management On Live WebsitesBad camp2016 Release Management On Live Websites
Bad camp2016 Release Management On Live Websites
 
A FUTURE-FOCUSED DIGITAL PLATFORM WITH DRUPAL 8
A FUTURE-FOCUSED DIGITAL PLATFORM WITH DRUPAL 8A FUTURE-FOCUSED DIGITAL PLATFORM WITH DRUPAL 8
A FUTURE-FOCUSED DIGITAL PLATFORM WITH DRUPAL 8
 
The Future of Digital Storytelling - Phase2 Talk
The Future of Digital Storytelling - Phase2 TalkThe Future of Digital Storytelling - Phase2 Talk
The Future of Digital Storytelling - Phase2 Talk
 
Site building with end user in mind
Site building with end user in mindSite building with end user in mind
Site building with end user in mind
 
Fields, entities, lists, oh my!
Fields, entities, lists, oh my!Fields, entities, lists, oh my!
Fields, entities, lists, oh my!
 
Performance Profiling Tools and Tricks
Performance Profiling Tools and TricksPerformance Profiling Tools and Tricks
Performance Profiling Tools and Tricks
 
NORTH CAROLINA Open Source, OpenPublic, OpenShift
NORTH CAROLINA Open Source, OpenPublic, OpenShiftNORTH CAROLINA Open Source, OpenPublic, OpenShift
NORTH CAROLINA Open Source, OpenPublic, OpenShift
 
Drupal 8 for Enterprise: D8 in a Changing Digital Landscape
Drupal 8 for Enterprise: D8 in a Changing Digital LandscapeDrupal 8 for Enterprise: D8 in a Changing Digital Landscape
Drupal 8 for Enterprise: D8 in a Changing Digital Landscape
 
Riding the Drupal Wave: The Future for Drupal and Open Source Content Manage...
Riding the Drupal Wave:  The Future for Drupal and Open Source Content Manage...Riding the Drupal Wave:  The Future for Drupal and Open Source Content Manage...
Riding the Drupal Wave: The Future for Drupal and Open Source Content Manage...
 
Site Building with the End User in Mind
Site Building with the End User in MindSite Building with the End User in Mind
Site Building with the End User in Mind
 
The Yes, No, and Maybe of "Can We Build That With Drupal?"
The Yes, No, and Maybe of "Can We Build That With Drupal?"The Yes, No, and Maybe of "Can We Build That With Drupal?"
The Yes, No, and Maybe of "Can We Build That With Drupal?"
 
User Testing For Humanitarian ID App
User Testing For Humanitarian ID AppUser Testing For Humanitarian ID App
User Testing For Humanitarian ID App
 
Redhat.com: An Architectural Case Study
Redhat.com: An Architectural Case StudyRedhat.com: An Architectural Case Study
Redhat.com: An Architectural Case Study
 
The New Design Workflow
The New Design WorkflowThe New Design Workflow
The New Design Workflow
 
Drupal 8, Don’t Be Late (Enterprise Orgs, We’re Looking at You)
Drupal 8, Don’t Be Late (Enterprise Orgs, We’re Looking at You)Drupal 8, Don’t Be Late (Enterprise Orgs, We’re Looking at You)
Drupal 8, Don’t Be Late (Enterprise Orgs, We’re Looking at You)
 
Memorial Sloan Kettering: Adventures in Drupal 8
Memorial Sloan Kettering: Adventures in Drupal 8Memorial Sloan Kettering: Adventures in Drupal 8
Memorial Sloan Kettering: Adventures in Drupal 8
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
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
 
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...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
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
 
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...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
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
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
"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 ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 

Apps: Start to Finish

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n