Git Product home page Git Product logo

forecast-ut's Introduction

Forecast

Simple application for university.

Development

Application is written on Fastify.

  1. Install dependencies
$ npm i
  1. Run service in development mode with live-reload
$ npm run dev

Run the test cases.

$ npm run test

API

Locally application is running on http://127.0.0.1:3000

GET /forecast/:city

URL Params: city: string -> any city name

โœ… 200 - Returns random forecast

  {
    "success":true,
    "data": {
      "city":"Tartu",
      "temperature":3,
      "wind":2,
      "precipitation":"๐ŸŒฆ๏ธ"
    }
  }

โŒ400 - Bad request - 30% of requests will be failed with this error

  {
    "success":false,
    "data":null,
    "error":"Something went wrong. Please try again"
  }

POST /forecast

BODY Params: city: string -> allowed city name

โœ… 200 - Returns random forecast for city

  {
    "success":true,
    "data": {
      "city":"Tartu",
      "temperature":3,
      "wind":2,
      "precipitation":"๐ŸŒฆ๏ธ"
    }
  }

โŒ404 - Not Found - if provided city not found

  {
      "success": false,
      "data": null,
      "error": "City not found in the list. Allowed cities are: Tartu, Tallinn, Berlin, Barcelona, Paris, Copenhagen, Helsinki, Riga"
  }

WebSocket /magnitude/:city

NOTE:

  • Response is stringified JSON

โœ… 200 - Returns random magnitude for city, every 2000ms

  {
    "city": "Tartu",
    "magnitude": 4.6
  }

forecast-ut's People

Contributors

artem-galas avatar stdevi avatar

Watchers

 avatar  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.