Git Product home page Git Product logo

dashscreens's Introduction

A CSV-powered Mac App for Dashboards

Aims:

  • Move control of what shows on a dashboard to other teams
  • Be controlled entirely by a google spreadsheet
  • Allow cycling between a few different websites
  • Support enhancing a few particular pages for display

Admin

The admin-facing aspect of the App looks like this:

You choose a set of tags from the left, which exposes a set of links which will be cycled through on that screen. There are three types of windows you can create: Full Screen, Half-Left and Half-Right. Creating a new window will be attached to the screen where the preferences window is, so move the preferences window to a different screen to work with multiple displays.

You might need to authenticate for a particular screen, you can do that by double clicking on an active link and it will pop up a window what you can interact with.

Tips:

  • You can bring the Dashscreen admin window up by pressing cmd + 0 if the app is active
  • You can't interact with the dashboard windows at all right now, so make sure you get it right :P

The Spreadsheet

The google spreadsheet expects the following headings on line 0: name, type, tag, href, time (hours). There is a public example version of what we use here

Dev

git clone https://github.com/orta/Dashscreens
cd Dashscreens
bundle
bundle exec pod install

It will ask you for some keys, the Team Nav one you can ignore. The spreadsheet url you can get by taking your spreadsheet and clicking the download as CSV menu item in Google Spreadsheets.

How it Works

There are two main places where stuff happens:

  • PrefsController - handles requesting the CSV, updating screen layouts etc, and uses Cocoa bindings to handle displaying info on the main window.
  • ScreenViewController - handles taking a list of links, and presenting them in webviews (does some fancy work to try skip loading screens.)

dashscreens's People

Contributors

orta avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.