No Maintenance Intended



CityOS Air is the highest rated enironmental app in the South European region.

Features
👍 The power of clean air is right at your fingertips with the air app
👍 Monitor all sensors in real time for a comprehensive picture of the air quality and the environment
👍 Automatic syncing to the cloud, your air data goes with you no matter where you are.
👍 The app provides you with comprehensive data and graph trends to give you a deeper understanding of your surroundings, air pollution patterns, and insights into the source of poor air quality as it happens.
:octocat: 100% free and open source

Contributing

We are always looking for contributions from all skill levels!

CityOS

CityOS web app

Project architecture:

  • Framework: React

  • Language: Javascript

  • Web standard: HTML 5

  • Styling framework: Styled components

  • Packet manager: Yarn

  • Arrays manipulation library: Loadash

  • Date/Time manipulation library: moment.js

Browsers:

  • Chrome
  • Firefox
  • Edge
  • Safari
  • Android 4.1 - 6.0
  • IOS 7 – 10

Project implementation:

Application parts below are flagged like this:

  • 📒 Folders
  • 📑 Files

Project arhitecture:

  • 📒 core
    • 📒 http
      • 📑 axiosInstance.js
    • 📒 state
      • 📑 axiosInstance.js
      • 📑 rootReducer.js
      • 📑 rootSaga.js
      • 📑 store.js
  • 📒 features
    • 📒 auth
    • 📒 common
    • 📒 header
    • 📒 map
    • 📒 dashboard
    • 📒 helpers
  • 📑 package.json
  • 📑 README.md

Setting up project:

  • Install dependencies: yarn

  • Start project: yarn start

  • Create a deployable build yarn build

Commiting your work:

  • Fetch origin: git fetch

  • Rebase your changes: git rebase origin/master

  • Resolve conflicts and save if needed, then: git add . git rebase --continue

  • Push changes: git push

  • Create PR

  • Select squash and merge option on github.

ESLint

Install Visual Studio Code extensions:

External libs (dependencies)

Package name Version License Author
react ^16.8.4 MIT Facebook, Inc.
react-dom ^16.8.4 MIT Facebook, Inc.
react-router-dom ^4.3.1 MIT
react-redux 6.0.1 MIT
redux ^4.0.1 MIT
redux-saga ^1.0.2 MIT
react-scripts ^2.1.8 MIT
axios ^0.18.0 MIT
google-map-react ^1.1.4 MIT
moment ^2.24.0 MIT
lodash ^4.17.14 MIT
react-datepicker ^2.11.0 MIT
react-geocode ^0.2.1 MIT
d3-dsv ^1.1.1 BSD-3-Clause
d3-format ^1.3.2 BSD-3-Clause
d3-shape ^1.3.5 BSD-3-Clause
d3-time-format ^2.1.3 BSD-3-Clause
@turf/turf ^5.1.6 MIT
date-fns ^2.0.0-alpha.27 MIT
deck.gl ^6.4.7 MIT
formik ^1.5.1 MIT
history ^4.9.0 MIT
mapbox-gl ^0.53.1 BSD-3-Clause
react-circular-progressbar ^2.0.0 MIT
react-facebook-login ^4.2.0 No license
react-google-login ^5.0.4 MIT
react-map-gl ^4.1.1 BSD-3-Clause Uber
react-outside-click-handler ^1.2.3 MIT
react-places-autocomplete ^7.2.1 MIT
react-select ^2.4.2 MIT
react-sparklines ^1.6.0 MIT
react-stockcharts ^0.7.8 MIT
react-vis ^1.11.7 MIT
styled-components ^4.1.3 MIT
supercluster ^7.0.0 ISC
victory ^32.2.0 MIT
yup ^0.27.0 MIT

Why are we building this?

We are group of people who care about the envirnment and the better future of humanity.

Code of Conduct

We aim to share our knowledge and findings as we work daily to improve our product, for our community, in a safe and open space. We work as we live, as kind and considerate human beings who learn and grow from giving and receiving positive, constructive feedback.