Git Product home page Git Product logo

rindus-task's Introduction

Rindus task

Introduction

This project is an API that provides current weather information and forecasts for cities. It allows users to retrieve weather data for a specific city, including the current weather conditions and the forecast for the upcoming days. The API utilizes mocked data to provide the weather information. Additionally, it calculates and provides the average temperature for the specified timeframe. Users can make requests to the API to obtain weather data for their desired cities.

Project Support Features

  • Public (non-authenticated) users can access all causes on the platform.
  • Authenticated users can access to initial database filling.
  • Provide pre commit and push check.
  • Commitlint for make clear and readable commit messages.

Installation Guide

  • Clone this repository here.
  • Run yarn install to install all dependencies
  • Create an .env file in your project root folder and add your variables. See .env.example for assistance.

Usage

  • Run yarn dev to start the application.
  • Connect to the API using Postman on port 2348.

API Endpoints

HTTP Verbs Endpoints Action
POST /_init To fill the database with mock data from src/api/_init/data/
GET /cities To retrieve all cities
GET /condition To retrieve all existing weather conditions
GET /weather To retrieve all weather from all existing cities
GET /weather/:cityId To retrieve weather of a single city

Technologies Used

  • NodeJS This is a cross-platform runtime environment built on Chrome's V8 JavaScript engine used in running JavaScript codes on the server. It allows for installation and managing of dependencies and communication with databases.
  • ExpressJS This is a NodeJS web application framework.
  • PostgreSQL open source object-relational database system with over 35 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance.
  • Webpack A free and open-source module bundler for JavaScript. Provides code on demand using the moniker code splitting.
  • Commitlint Checks if your commit messages meet the conventional commit format.

Authors

License

This project is available for use under the MIT License.

rindus-task's People

Contributors

romsribn avatar

Watchers

 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.