Git Product home page Git Product logo

ambient-weather's People

Watchers

 avatar  avatar

ambient-weather's Issues

Cycle Color

The colors that are saved should be able to cycle through as a sort of preview.

Setup server

Basic server should be setup on the ESP8266.

It should be accessed via .local domain.

Read and Update Colors

Colors need to be saved off and be able to be loaded up again.

Right now, apply / cancel don't matter, so this should also give those functionality.

Pull weather information

Find a weather API that can be used to get basic weather info.

Need to be able to get

  • Current condition
  • Temperature
  • Forecast
  • Metric / US

Create mock backend

It feels impractical to have an ESP running to build out the client functionality.

Can probably just use OpenAPI to create mock backend, that will give us a general idea.

Add Jest

Currently no tests really exist.

Some should be added, and Jest should be used.

Save off settings

The settings need to be saved off when updated.

This will also include adding a save and cancel button.

Light LEDs based on weather

Probably will periodically get the weather, and set the light to the color set for that weather type.

Maybe add an endpoint to manually update the weather.

Changing color should be a nice fade.

Alert sever weather

To try out push notifications, we could make it so if there is currently severe weather, a notification is sent to the user.

Save settings

Settings need to be saved to the ESP.

Settings will be

  • Location (postal code probably)
  • Units
  • Hostname

Wire up LED strip

Find a multicolored LED strip, and wire it up to the ESP8266.

It can just have any color as proof it works.

Manually set color

It should be possible to manually set the color that the light will show.

Not sure yet if this should be able to use any color, or just one that was saved off (or both).

Error handle requests better

Right now the errors with the requests in the sagas are just logged. They should probably do something like dispatch START_UPDATE_THING which makes a copy of what's to be updated, and END_UPDATE_THING removes the old on success (ERROR_UPDATE_THING on fail).

Minify like nothing else

The dashboard should fit on the ESP8266. After the main functionality is done, optimizations should be made (in the code, or build process) to keep it small.

Might need to look at using Preact.

Might be able to package it as gzipped files.

Could be helpful to add something to warn when getting close to 1mb limit.

Use Bazel

Using Bazel as a build tool might be fun.

It would be neat to get on the edge of JS stuff, and if the Arduino code is done in C++ it might be able to build both.

Preview Color

Before a color is saved off, it should be able to be previewed with the light.

Display weather

The weather tab should show the weather for the given location.

The placekitten should be an actual icon.

The forecast should be current hour plus four hours, with what the color will be as the dot. The line should be what the current color is.

The mock backend can randomly generate weather.

Spiff up layout

The layout is mostly what it should be like.

Some things to change

  • Padding around the page contents
  • Breakpoints on smaller screen
  • Vertical vs horizontal layout

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.