Proposal for an official WordCamp app for iOS, watchOS and tvOS

Summary

I have built a prototype of iOSiOS The operating system used on iPhones and iPads., iPadOS, watchOS and tvOS apps that I would like to propose to be adopted as the official WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. apps for Apple platforms.

Context

Back in June 2019, Apple announced a new way of building user interfaces, called SwiftUI, in their annual developer’s conference.

Right after the announcement, I started playing with the new frameworks. My initial goal was to evaluate the new tools and the feasibility of using them in my daily practice, as well as having some fun chasing the new shiny thing.

In order to really stretch the boundaries of the new tools offered by Apple, I decided to build something that could go beyond just a throwaway prototype, simple enough to be built fast, and complex enough to incorporate some challenges: something that would fetch data from a remote server, and render it on screen.

The WordCamp Central API seemed like a great candidate for this prototype. It provides structured, simple data, in a domain that I am familiar with and deeply care about.

What started as a prototype has now reached a point where it provides enough functionality to be handed over to the community and released to the public.

Motivation and goals

The project started as a playground to learn and experiment about the language and frameworks that are soon going to become the standard building tools for IOS development.

However, I soon realized that this could be more than just an internal mechanism for learning, as it started showing potential as an actual project, a project that could be shared and contributed back to the community.

Currently, my goals for this project are:

  • Encouraging native iOS developers to interact with WordPress, building a contributor base for the official WordPress Apps.
  • Providing a playground to explore the strengths and limitations of the new frameworks released by Apple to all iOS developers and potential new best practices.
  • Giving an opportunity to native iOS devs to engage with the WordPress Mobile team.
  • Solving the current lack of an official WordCamp app for iOS.
  • Gathering and sharing anonymous usage data that could help when considering a reset of the app’s Android counterpart.

Project overview

The project provides, in a single codebase:

  • An iOS / iPadOS app.
  • A watchOS app.
  • A tvOS app.

The functionality of the three apps is slightly different, as they adapt to the strengths (and limitations) of each platform, but the common denominator is:

  • A List of Upcoming Events.
  • A Details Screen with information related to a single event.
  • Data obtained from the WordCamp CentralWordCamp Central Website for all WordCamp activities globally. https://central.wordcamp.org includes a list of upcoming and past camp with links to each. APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways..

The apps are implemented using stock controls, and provide basic integrations with the system, like Maps and directions, Voice Over, Dynamic Type, or Dark Mode.

iOS / iPadOS

This app provides the most functionality and maximizes information density.

The app starts to a list of events:

Screenshot of proposed WordCamp for iOS app displaying a list of events on a device in Dark Mode
Proposed WordCamp for iOS app. List of Events (Dark Mode)

The list of events can be filtered:

Proposed WordCamp app for iOS displaying a list of events filtered by the text "as", running on a device in Light Mode
Proposed WordCamp app for iOS displaying a filtered list of event. Light Mode

And the details screen provides the most dense information of all the apps: location and dates, venue information, description, links to the event website, and the Twitter account.

Proposed WordCamp app for iOS displaying detailed information about WordCamp Asia, including a map view, and information about dates and venue
Proposed WordCamp app for iOS. Details view, including map and venue information

Tapping the map will open the venue location in Apple Maps.

watchOS

The watchOS app can be installed independently from the iOS app, and provides a list of upcoming events that can not be filtered: 

Proposed WordCamp app for watchOS displaying a list of upcoming events
The proposed WordCamp app for watchOS, displaying a list of upcoming events

and a details view with the location, dates, name of the venue, and a map that opens the default Maps app when tapped.

tvOS

The tvOS app is a little behind in terms of functionality. At the moment, it provides a list of events, and a details screen with just the name, location,dates of the event, and the name and location of the venue.

Proposal

The apps are reaching a point where they are almost ready for a public releaseRelease A release is the distribution of the final version of an application. A software release may be either public or private and generally constitutes the initial or new generation of a new or upgraded application. A release is preceded by the distribution of alpha and then beta versions of the software., and the code is available for review on GitHub.

I would like to propose that this project, and the associated apps, is adopted as the official WordCamp iOS/watchOS/tvOS apps, with the source code being moved tohttps://github.com/wordpress-mobile/, and maintained by the Mobile team.

Feedback

Please share your feedback and thoughts about this proposal in a comment on this post! And if you have any design feedback or feature suggestions for the apps, I’d love to hear them! Thank you!

+make.wordpress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org//mobile

#apps, #mobile