Open hardware and software to help communities measure and analyze pollution

Measuring pollution at low cost

Public Lab is focused on democratizing the tools and techniques of environmental science so that communities who face pollution and other environmental problems can actually use them.

We believe that low cost, open source, easy to use hardware and software can enable anyone to collect data with which to hold polluters accountable.

Sensor data and open hardware development

Public Lab software projects focus on two areas: community collaboration and open hardware development (, and data processing for our sensors and tools ( and, among others).

Our collaboration and development platform enables thousands of people to publish updates and share designs for emerging environmental open hardware projects. Our browser-based data analysis tools make use of HTML5 features such as CSS 3d transforms for image distortion and the WebRTC webcam API for capturing spectral data, to make advanced features available to users in a powerful cross-platform, user-friendly, database-backed approach to open science tools.

lightbulb_outline View ideas list


  • ruby on rails
  • javascript
  • node.js
  • raspberry pi


comment IRC Channel
email Mailing list
mail_outline Contact email

Public Lab 2019 Projects

  • Pranshu Srivastava
    `matcher.js` library and `Leaflet.DistortableImage` overhaul
    This project is divided into two parts, namely, building a matcher.js library and revamping Public Lab's Leaflet.DistortableImage repository, a...
  • Margaret Norton
    A small proposal for global environmental monitoring with Image Sequencer
    The project will increase Image Sequencer capability while simultaneously demonstrating the ability to process satellite images. The general approach...
  • Rishabh Rawat
    Community Toolbox Overhaul
    Community-toolbox allows everybody to take a look at the activities going on in the PublicLab projects, helps in welcoming newcomers. It plays a...
  • Gautami Gupta
    GSoC proposal Public Labs: Notification System and UX Improvements
    Notification System Notification system mainly consists of two parts, In-app Navbar Notifications and Web Push Notifications. -In-app Navbar...
    Image Sequencer enhancement focusing Module Implementations, Particle analysis and code Maintainability.
    My proposal is based on enhancements that would incorporate real world use cases into the project and testing and maintainability that will bring...
  • Divy Khare
    Image-Sequencer v3: Boosting the performance and adding demonstration based on colorimetry
    This project aims to boost the performance of Image Sequencer project by using WebAssembly for accelerating the performance of various parts of code...
  • Divya Baid
    Mapknitter Image Management and Synchronous Editing
    MapKnitter is based around the upload of images, the positioning of those images on a map, and the compositing of those images into map export...
  • Kaustubh Nair
    Mapknitter Rails upgrade
    This project MapKnitter's Rails version from 3.2 to the latest stable version. Along with this, I will also be: Increasing test coverage Improving...
  • Álax Alves
    Mapknitter Rails Upgrade
    Increase test coverage. Improve CI integration and pipelining. Upgrade Rails framework version
  • Vidit Chitkara
    Mapknitter synchronous editing
    Multi user synchronous image editing in realtime (publiclab/mapknitter)
  • Isha Gupta
    Sensor Data Upload and Display Library
    A standalone HTML+JavaScript based library through which CSV data can be uploaded and charts can be plotted by selecting different columns from it....
  • namangupta
    Websocket Interaction for Real-time Interaction and Sensor data and Display Library
    Integration of ActionCable to implement web Sockets for Various Real-Time communication in the plots2 project such as for Notification, Comments etc....