Giter Site home page Giter Site logo

smackthat / plants-of-the-world Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 5.44 MB

An interactive Earth with plant zones and information using the Trefle API and MapBox GL.

HTML 1.54% TypeScript 93.87% JavaScript 3.60% SCSS 0.80% Dockerfile 0.19%
mapbox mapbox-gl mapbox-gl-js plants trefle trefle-api

plants-of-the-world's People

Contributors

johannesstenberg avatar smackthat avatar

Stargazers

 avatar

Watchers

 avatar

plants-of-the-world's Issues

D3js Earth globe

Make a D3js Earth globe using React. Just the basic functionalities, extra functionality (like tiles, layers, etc.) will be specified in other tickets.

Functionalities:

  • Should parse a map from GeoJSON
  • Should be able to rotate the globe
  • Should be able to zoom the globe
  • Should be able to zoom on the chosen region

Setup client API request caching

Making requests to the Trefle API oughta be cached, because loading already once loaded resources is unnecessary and costly. It is best to avoid this sort of traffic. Implement a client side API cache.

The Nodejs backend

Build a backend for the app by using Nodejs and Express. Should serve as a proxy to the Trefle API, so the API secret token is kept secret. Also, in production mode serves the client side build.

Functionalities:

  • Should handle request that gets all the plants for a selected region from the API.
  • Should handle a request that gets single plant's info.
  • Should get distribution zones for selected plant.
  • Should serve the client build in production.

Implement Material UI

To make it look prettier 'n all.
Oughta have:

  • A scrollable list with image thumbnails and titles (plants list)
  • The scrollable list should have paging (the plants from Trefle come in batches of 20)

Refactor project structure

Client side code in its own folder and vice versa for the backend code. Also, separate components into own files, and API call logic, etc.

Map layers

Including lakes and rivers, vegetation zones, habitated areas., etc. Just need to find data sources for these (shapefiles, GeoJSON, csv, whatever).

Maybe vector tiles from MapBox etc.?

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.