Directory 2020
Website with categorised and filterable listings of coliving spaces for workations.
Types: Web, Brand; Roles: Conception, Design, Development, Architecture; Functions: Content Management, Mapping; Tools: Lua, Moonstalk, CSS, HTML.
Innovations
- Filter flexibility on some classifications as enumerated scales (e.g. outside spaces from terrace to big garden; workspace from bedroom desk to coworking) enabling results to be expanded with degrees of relevence, instead of simply returning unhelpful 'nothing matched'.
- Multi-faceted classification system uses both structured and unstructured tags; which may be grouped by parents, optionally redirecting and hilighting child tags; plus enabling customisation of every view where values are consumed.
- Freeform rates, in which multiple unit classes may be declared with any duration and rate; the system creating summaries of these for common cases (e.g. weekly and monthly rates).
- Unusual mobile UI giving access to an almost fullscreen map with information panel below it as a single swipable view, instead of the more typical multi-modal/click-panel-close interactions. (Usability value to be ascertained.)
- For the explore map, a SPA-style client-side with real-time filtering, using a compact base dataset maintained as JSON, supplemented with per-property JSON data requests upon user interaction, thus avoiding server-side dependencies and database queries. (Obviously only capable of handling a smaller datasets, though under 75k gzipped for 1500 properties, not likely to be exceeded for many years.)
- Tags for all filter criteria preserved in the URL facilitating sharing. Clicked properties are preserved in the query string thus do invoke a server-side response to permit sharing when first accessed with a property query string.
- Given a huge variety of spaces and users, anonymised and unrated reviews to focus the user's attention upon their own interpretations.
- Fallback client-side rendering, should the server be unable to cache Instagram using a private API.
Features
- Highly performant, using the Moonstalk framework and its javascript loader, resulting in data loading and rendering completion in under half a second for the explore map.
- The use of tags in a provider-specified order to classify spaces also supports a self-declaration community label/marque using the logo, in which any space may declare itself a "coliving community" by prefixing its core offer or values as tags e.g. «Hub House is a #purposeful #cooperative Coliving Community».
- Data stored in easily edited structured text format (Lua).
- Third-party data sources (e.g. Instagram, Facebook, Google) cached on the server to eliminate additional latency.
- Passable/overridable filters in URL, as well as settable with cookies, this statefulness allows the map and list views to be shared preserving the user input criteria.
- Some data always in-page for instant client-side changes and reduced server processing, and when unspecified shows all spaces in list view with 'disabled' styling thus ensuring all potential results appear on pages for SEO and first-time visitors. If prefs are set or passed the server trims the data set to send a lighter load.
- Unstructured locations and contextual adjustment derived from declared human-friendly strings, e.g. "Barcelona, Spain" only appears as "Barcelona" on the Spain page, but a space may declare it as "near Barcelona" or anything else appropriate for reference instead of displaying simply an unhelpful administrarive name.
- Tags permit optional space-specific custom details, e.g. the "meals" tag can be expanded with free-form text such as "full-board included".
- Friendly URLs e.g: /in/spain /with/pool
- Custom pages can replace or supplement entire categories; CSS can also easily be used to make changes to specific categories.
- Currency conversion with rounding to faciliate user information scanning and consumption.
- Instagram photos only render the two most recent official account photos, also showing both top-ranked and recent location-specific posts (where an Instagram location is known).
Notes
Functions as an open community directory without any business operation/revenue, thus not restricting access to the websites of spaces nor hiding their identity — as is common on booking platforms that must do so to prevent direct booking.
Initially conceived as a synergistic site for promoting coownership projects, then expanded for other categories. Also conceived to host discussions and notices for each space (platform shared with coworking.community) however this is pending.