http://192.168.178.25:8585

How does it work?

Scroll down

  1. Download and install Phonk on your Android device
  2. Connect your device and your computer to the same WIFI network
  3. In your computer's web browser type the ip address that PHONK shows.
    PHONK's Web Editor will load.
  4. VoilĂ , you can start experimenting!
  • Superfast to code with

    Code, run, stop, repeat without breaking your creative workflow. Phonk uses Javascript but runs superfast since it uses Android natively.

  • Freedom

    Phonk is Open Source and does not rely on any cloud services. You can download it from F-droid, Github, Google Play or compile it yourself :)

  • Simple & Powerful

    Access your device sensors in a couple of lines of code and expand your device using an Arduino compatible board using OTG, Bluetooth o BLE. Phonk speaks many network protocols too! MQTT, OSC, Websockets... Check the method list

  • Awesomic Libraries

    Phonk includes some familiar libraries. Create graphics using a embeded Processing, audio using LibPd (Pure Data) and display maps thanks to Open Street maps, to mention a few

Screenshots

Download

Downloading PHONK

Below there is different sources to download PHONK. Downloading Phonk from any other link will NOT guarantee the correct function of the app.

The current version of PHONK is the 1.2.2

* Help wanted to include PHONK in F-droid

** Due to Google Play limitations, this version cannot send / receive SMS messages

FAQ

Which is the minimum version of Android supported?

The minimum I tried is 4.2 but I think it should work in 4.1 too

Why PHONK ask for so many permissions?

PHONK is a coding environment. It needs permissions to do things like using GPS, accessing the internet, write and read files, etc. You can always allow/disallow certain permissions. Just have in mind that if you disable some, then some features might not work.

Why do you use OpenStreetMaps instead of Google Maps?

I want PHONK to be used in all type of Android-based devices, and without the minimum dependencies of services that are out of control from the Open Source community.

Is it Processing the Javascript version or P5js?

PHONK uses a fork of the Processing Android mode, so it runs natively in Android

Does PHONK run on a Webview?

No. It uses native Android capabilities interfaced through Mozilla Rhino Javascript engine.

Why I cannot use modern Javascript?

PHONK relies on Mozilla Rhino, which is an old project that did not update so much for a long time. I tried to use a different JS engine, but Mozilla Rhino does work wonderfully for now. Wanna help? Let's talk in Github.

Is it PHONK suitable for beginners?

Yes and no. PHONK has a smooth start because you don't need to setup a complex environment on your computer. On the other side you still need to know basic programming (or learn with it) and things are still a bit buggy for new coders. I still encourage you to try it out!

Do you think PHONK is the ultimate Android programming tool?

I don't think so! There are so many great tools out there, just use the one that works for you!

Can I compile my script into a full standalone APK?

Yes, but it's quite complicated ATM. You will need to setup the whole Android environment. If I see interest I will work on creating a guide. (Help is welcomed)

What technologies are used to make PHONK?

Android-studio + Java to make the PHONK app and Vue.js to make the web editor.

How many hours have you been working on this?

Too many... It started in 2013 for personal use, first called 'Hayai' then 'Protocoder' now PHONK.

Why did you start making PHONK?

  1. Android coding environment and APIs felt too overwhelming for the type of projects I wanted to create. I wanted something where I could prototype something superquickly. Then I made a tool that took forever to create... but that's another story.

  2. I think soon will be more and more old Android devices getting dust in drawers than trees in the world. So why not using them for some tinkering rather than buying new stuff? Old tech is good!

How can I contribute?

  • Reporting unlisted bugs
  • Fixing listed bugs
  • Helping to improve the documentation
  • Spreading the word
  • Writing tutorials