Swiftpack.co - Package - dev-board/Devboard

MySQL

MIT License Swift 3.1

Devboard is a dashboard for application development projects. Its primary purpose is to aggregate and rotate through project information and statistics on a TV. It can also be accessed through a web browser and pulled up from anywhere. Devbord was created to pull information from a variety of services on a regular cadence and allow viewing of that information all in one place. All that is needed to set it up are two JSON configuration files, no programming required. If one needs to add something that doesn't already exist, Devboard follows a plugin based architecture, allowing new features to be easily added.

If there is a service you want to display information from that is not already integrated with Devboard, adding it is quite easy (but does require a bit of programming.) For a service that already has a similar type already integrated (Like a build or CI/CD monitor), it just requires adding a service worker to collect and store the information in an already created format. If there is not a similar type, you'll also need to create the database model for storing the collected information, as well as a front end for the information you are trying to present.

Author Aside

This project came about as I was working on a dashboard for work that aggregated data from a variety of services (GitLab, Omniture, App Stores) using Node.js. It was a lot of custom code for each thing I wanted to display from collecting the data, to displaying it with d3. I was starting to think of adding a plugin based architecture as well as adding GitLab pipeline integration when I saw the moonshot of this project by KSF Media. I decided to scrap what I did in Node, and start anew using Vapor. (I found it much easier as an iOS developer.) I decided to make this my goal as well, but expand upon it by crossing it with the functionality I've already written for my own dashboard. Thus this project was created and made open source with the hope that many people will contribute and as much functionality can be added as possible while still keeping the dashboard easy to setup and use (No programming required).

Integrated Services

  • Build Monitors
    • GitLab
    • CircleCI

Documentation

Checkout the complete setup and development documentation here: LINK

Services To Integrate

  • Build Monitors
    • Travis CI
    • Jenkins
  • App Ratings
    • iTunes Connect
    • Google Play Store
  • App Sales
    • iTunes Connect
    • Google Play Store
  • Analytics
    • Fabric
    • Omniture
    • Firebase
  • Codebase Statistics
    • Git
  • Custom Data
    • ElasticSearch
  • Tournament Brackets
    • Custom matches
    • March Madness
    • Football
    • Baseball
  • IP Address monitor
    • Headless machines log IP addresses to devboard. Display for places that can't use static IP addresses.

// TODO

  • Integrate above services
  • In-place updating the content of a web page. (If a new build is started, animate it into the build monitor dashboard instead of having to fade all content in and out.)
  • Add widgets
    • General
      • Clock
      • Weather
    • Build Monitor
      • Project Name
      • Total builds
      • Builds today
      • Average wait time
      • Average build time
  • Configuration Builder / Validator App
    • Something that doesn't require a server.

Showcase

No DevBoards in public use yet. Submit a pull request to add yours!

Github

link
Stars: 0
Help us keep the lights on

Used By

Total: 0

Releases

0.1.1 - Mar 12, 2018

Updated the build monitor layout.

0.1 - Feb 27, 2018

Dashboard and menu support. Build monitor support for GitLab and CircleCI. Decent documentation.