Skip to content

tboie/universal_info_display

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UNIVERSAL INFO DISPLAY PROTOTYPE

concept

Version 1 (Mobile)

  • A horizontally scrolled content display system. It's purpose is to display and navigate sets of item data. Location and map features included. UI Components are used to filter and sort item data.
  • Display nearest x items less than x miles (50 default) from device location

Goals

  • Experiment navigating a simplified horizontally-scrolled content system
  • Experiment enhanced content media presentation with rotating 3D effect items
  • Experiment using a real industry-level dataset (100k+ items, 2500+ stores)
  • Experiment map integration for items with openstreetmap

Demo

Install/Run

node v16

(view using browser dev tools mobile)

npm i
npm start

Design/Parts

design

  • ContentSlider: A scrolling window displaying information
  • FilterBar: Displays UI data filter buttons
  • Grid: A 9 unit flex grid displaying items
  • Item: A modal of the selected item
  • Map: An openstreetmap called rlayers to display item locations
  • Range: A data asc/desc range control with the min/max auto-populated from data
  • Shell: High-level application shell containing UI components
  • Slider: A horizontally scrolled data-driven choice component
  • TitleBar: Status bar at the top displaying status info

UX Flow

ux flow

Data Flow (design open to change)

data flow

Data Config

Performance

  • Items are proximity-rendered from currently selected(viewed) page

Equipment/Info/Tools used for 3D Item object recording with iPhone

3D Item Object iPhone Recording and Media Transfer

Video Conversion Commands

NOTE: 10 seconds is considered the official slice start time because the camera had to be re-adjusted due to slight movements after recording

  1. Slice 30 seconds (1 rotation) and create new keyframes from video starting at 10 seconds
ffmpeg -i orig.mov -ss 00:00:10 -t 00:00:30 -async 1 out.mov
  1. Remove background of mov and export gif
backgroundremover -i out.mov -tg -o out2.gif
  1. Scale gif to 200x200 and retain transparency
ffmpeg -i out2.gif -filter_complex "[0:v] scale=200:200:flags=lanczos,split [a][b]; [a] palettegen=reserve_transparent=on:transparency_color=ffffff [p]; [b][p] paletteuse" -loop 0 final.gif

Media Optimization Opportunity (secret sauce?)

NOTE: Tried using the video player with webm/mp4 files and found safari/ios can only play h264 format. That format does not appear to support an alpha(transparency channel).

Have the item "float" by displaying a slice of a full rotation.

  • Use CSS sprite animations
  • Play in forwards then reverse

TODO/THINK/(RE)DESIGN

  • routing
  • Extend map features? Directions?
  • Custom ranking systems/designs...
  • Social Features
  • Don't forget PPU field (points per unit)
  • Gamifications (badges, awards, etc)
  • OnlInE ShoPPing aka e-commerce
  • community involvement?
  • Design and Port to new framework?

About

experimental mobile app to enhance data navigation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published