A web application for displaying information from various APIs on digital signage.
- Serve as a test bed for learning new technologies.
- Long term: I expect to run this application for years, if not decades.
- Stability: I expect the application to run without maintenance indefinitely.
- Availability: 100% uptime.
- Fault tolerance: the application functions when no internet connection is available.
- Signage endpoints
- Visionect 13" displays (/thirteen)
- Fetched by Visionect Software Suite running on local network and displayed on 13" Place and Play devices. Fetch interval is currently 10m.
- Boox Mira Pro (/mira)
- Fetched by a client Mac Mini with a Boox Mira Pro (25.3" 3200x1800px e-Paper display) running Google Chrome full screen.
- Self-refreshes entire screen every 1s.
- Visionect 13" displays (/thirteen)
- remove .stub from tests in favor of dependency injection
- Use PStore instead of SQLite
- Add (day x/y) for multi-day all-day events
- run Rails server with
launchd
- add health checks for home assistant automations
- integrate with RFID jukebox: https://github.com/maddox/magic-cards
- set up remote chrome debugging on client display
- sync tempest weather data
- Dither images using this technique: https://news.ycombinator.com/item?id=37837009
- Integrate with Home Assistant to show whether mail has been delivered today
bundle install
rails db:setup
- Copy
.config.yml
from a friend. rails s
- Visit http://localhost:3000
bundle exec rake
Currently, Timeframe runs on a local Mac Mini in development mode. There is no production deployment.
To fetch the latest version: git fetch --all && git reset --hard origin/main
To upgrade Visionect: docker-compose pull && docker-compose up -d
Rails server: SECRET_KEY_BASE="foo" RAILS_ENV=production rails s -p 80 -b 0.0.0.0 --no-log-to-stdout
BG jobs: RAILS_ENV=production bundle exec sidekiq