Giter Site home page Giter Site logo

jonothanhunt / inky-draw Goto Github PK

View Code? Open in Web Editor NEW
4.0 1.0 1.0 232 KB

A fun drawing app project for the Raspberry Pi and Inky pHAT using Python Flask and React.

Shell 0.17% Python 9.76% HTML 1.25% CSS 34.91% JavaScript 53.91%
art inky inkyphat raspberry-pi raspberrypi

inky-draw's Introduction

Inky Draw

Sreenshot of jonothan.dev

A fun drawing app project for the Raspberry Pi and Inky pHAT using Python Flask and React.

Select a colour (your Inky's special colour should appear if it has one) and draw with your mouse, then send it to your Inky!

Get started

The first time you use Inky Draw, you'll need to do some installs:

Click here for the initial setup

Python Flask API

Set api as the current working directory

cd api

Create a Python virtual environment

python3 -m venv my_venv

Activate the environment:

source ./my_venv/bin/activate

Install required packages into the environment:

pip3 install -r ./requirements.txt

React app

Install the required packages for the React app:

yarn

Start

Start the API (make sure your Inky is on your Pi)

yarn start-api

Start the app

yarn dev

The app should not be running at localhost:5173 and can be opened in your browser!

Have fun!

inky_draw.webm.mp4

To do

  • Implement Inky special colours ๐ŸŽ‰
  • Add accessible roles to canvas
  • Improve UI colour palette for clarity
  • Add more in-depth error reporting
  • Potentially break Canvas component into smaller components
  • More pens and pencils (as components)

Contribute

This is fun! And if you think you can make it more fun, more accessible, easier to use, or find a bugโ€” feel free to contribute!

Some of the libraries (especially Python ones) are new to me, so no doubt there are efficiencies to be gained!

inky-draw's People

Contributors

jonothanhunt avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

siddhantvirus

inky-draw's Issues

Dude I love this.

ibid.

post notes for myself:

  • add preview and history to iterate on earlier scribbles
  • add stroke-policy to undo seperate strokes
  • add mobile touch support

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.