Skip to content

TimHess/smart-bulbs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PCF Smart Bulb Demo

Overview

This repository consists of two .NET Core applications and one .NET Standard library. All code is C#. One of the applications is ASP.NET MVC (SmartBulbs.Web) and the other is a .NET Core Console application (SmartBulbs.Console). SmartBulbs.Common is for sharing models between the two applications.

Tools used

  • ASP.NET Core (2.1)
    • SmartBulbs.Web: provides a UI for getting a CredHub password, reading tweets on demand, and viewing sentiment analysis and color results
      • MVC: for views and HTTP endpoints
      • SignalR: powers the Observation deck
  • .NET Core Console application
    • SmartBulbs.Console:
      • polls twitter for new #cfsummit tweets
      • uses Eureka to find SmartBulbs.Web and share tweets via HTTP

Software Libraries

  • LifxIoT - for calling the LIFX API to update the bulbs
  • LinqToTwitter - for reading tweets
  • Zxcvbn-core - .NET Port of Dan Wheeler/Dropbox's JavaScript library - for analyzing password strength
  • Steeltoe
    • Service Discovery - for the SmartBulbs.Console to discover SmartBulbs.Web
    • CloudFoundry Configuration - to read Cloud Foundry environment variables
    • CredHub Client - for interactions with CredHub
    • Management - for application management and monitoring

3rd Party Services

  • Microsoft Cognitive Services Text Analysis API
    • Sentiment Analysis - determines how the writer is feeling based on the words in their message
  • LIFX HTTP API - controls the smart bulbs
  • Twitter

Twitter monitoring overview

Twitter Monitor Diagram

About

Controlling smart lightbulbs from .NET

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published