Re: GSoC idea: TogetherJS

Sean Upton <[email protected]>
Newsgroups gmane.comp.web.zope.plone.devel
Message-ID <CANjV-2N31mJRyQAEjykhGf2qtH91zhBa=GZ6Bjw26nD6NR5v9Q@mail.gmail.com>
On Thu, Feb 13, 2014 at 10:18 AM, Matthew Wilkes
<matthew.wilkes-z4DKO/[email protected]> wrote:
> On 2014-02-13 16:52, Steve McMahon wrote:
>> This could be a good year to encourage some UI work built on
>> plone.app.widgets. We finally have a JS story that could excite some
>> students, and that kind of work won't require them to dive too deep into
>> our Python kool aid (to mix metaphors).
>
> Steve, can you be a bit more specific please? I don't know enough about
> p.a.widgets to flesh this out myself.

Improvement to github.com/plone/mockup generally is a nice idea
because it allows us to find student developers with JS experience who
aren't necessarily Plone people, and don't need to know the Plone
stack, or really even be familiar with Python?  The challenge might be
getting folks to mentor, as there is only a small segment of the Plone
community that might have exposure to mockup and its requirements
as-of-yet (I do not yet include myself on that list, but might soon).

Specific improvement ideas (in each case, JS/client-side only, no
server side work):

* Pick-a-date: better keyboard-only-navigation of pick-a-date, with
support for text-entry of dates and basic normalized, localized date
parsing (using a wrapper around moment.js parsing).  Recurrence-rule
widget pattern, possibly based on work in plone.app.event?  Add
timezone picker based on select2 pattern as (a) distinct widget; (b)
something that can be enabled as part of the date widget.

* A "fullcalendar" replacement as a mockup pattern, possibly based on
D3.js and/or Vega; consumes mockup JSON calendar data irrespective of
its source.  Target deliverable would be pattern that consumes
configuration options, JSON/iCalendar/xCal/hCalendar listings of event
data and outputs weekly, monthly, or daily calendar (to time-scale)
with ability to switch views without page reloads.

* A subject/tags picker that supports tree-like controlled
vocabularies and/or ad-hoc keywords, and auto-complete; might re-use
parts of related items widget; should support some eventual tool like
possible successor ATVocabularyManager.  Could use ICD.9, NAICS, IPTC,
and other freely available vocabularies as data-sets for development.

* Something like the UI bits of collective.z3cform.datagridfield
re-done using more modern code, look/feel, as a pattern.

* Incidental widgets for mockup: color picker; slider/range input;
likert-scale widget; add infinite scroll to Select2 pattern; location
picker (search using map that pops up/down in overlay, gets normalized
street addresses and/or geocoded latitude/longitude for pin);
person-picker based on Select2 supports names/profile pictures;
image-thumbnail picker.

* Microformat support widgets for use with TinyMCE 4 when editing rich
text.  e.g. an hCard entry form, a basic event entry form for
(limited) hCalendar, a rel-license generator, location support for
h-adr plus h-geo.

Sean

------------------------------------------------------------------------------
Android apps run on BlackBerry 10
Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
Now with support for Jelly Bean, Bluetooth, Mapview and more.
Get your Android app in front of a whole new audience.  Start now.
http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.