Giter VIP home page Giter VIP logo

pixdisp's Introduction

MIT Licence Known Vulnerabilities Maintainability Test Coverage Build Status

A small application to drive LED matrix displays, such as the Pimoroni Unicorn, from nodejs. My intention is to create a digital graffiti/guestbook system and a general animation system. This is a project for fun, so if you have a feature just request it! Or add it and I'll review it. Social coding ftw.

Make sure you are on a recent nodejs version. Raspbian has an old version. Use Nodesource ;).

Also, use a decent modern browser. I wrote recent syntax, so probably works best in Chrome 62+. Firefox is known to have some issues, Edge works, Safari is a PITA. Just wait for your browser to play catch up then with recent standards. If you dislike Chrome, you can put this through Babel. But you're on your own there.

Copy config.example.json to config.json and pick a driver + display size.

execute:

npm install
nodejs pixdisp.js

optionally npm install pi-spi jpeg-js mjpeg-server

Navigate to http://localhost:8080/

Matrix driver & Unicorn Hat HD driver inspired by https://github.com/vesteraas/node-unicornhathd

JPEG encoding by https://github.com/eugeneware/jpeg-js

mjpeg-server by https://www.npmjs.com/package/mjpeg-server

Unit tests

This application has some unit tests, making use of Jest. Jest is configured as a dev dependency.

execute:

npm test

Some code linting practices and security tests can be executed by running the lint task:

npm run lint

Drawing

Device drawing

Simple clicking on the canvas in the responsive webinterface makes things light up; when you press submit it will get sent to the device.

Camera

Using your camera

The webinterface allows you to capture your camera and submit images from there.

Webinterface

Web interface

A simple web interface is included for drawing on the device. Defaults to port 8080.

Coding

Coding

Demo (Click for youtube)

With an advanced editor you can write simple animations in the browser using a secure sandboxed javascript. Documentation will follow here once the API is final.

pixdisp's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

werty1st

pixdisp's Issues

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.