RubySketch - Processing IDE 4+

Enjoy Programming with Ruby

Noritaka Suzuki

Designed for iPad

    • 4.6 • 14 Ratings
    • Free
    • Offers In-App Purchases

Screenshots

Description

RubySketch, awarded an "Outstanding Performance Award" at the Fukuoka Ruby Awards 2022, is an app to enjoy graphics programming easily.

This app includes Ruby language interpreter known as CRuby or MRI (Matz Ruby Implementation) and a simple text editor.
So you can edit and run a ruby script.

It also has an API that is almost compatible with Processing that is well known as a Creative Coding framework.
So you can enjoy graphics programming on your iPhone or iPad.

Key Features
- Built-in Ruby interpreter (CRuby / MRI)
- Processing-compatible graphics API with shaders available
- Built-in text editor that makes moving the cursor painless
- Physics-capable sprites
- Image input from camera
- Sound playback
- Includes many sample scripts, including simple games

This is a list of functions implemented to be compatible with the Processing API.
---
abs, acos, alpha, angleMode, applyMatrix, arc, asin, atan, atan2, background, beginContour, beginShape, bezier, bezierDetail, bezierPoint, bezierTangent, bezierVertex, blend, blendMode, blue, brightness, ceil, circle, clear, clip, color, colorMode, constrain, copy, cos, createCanvas, createCapture, createFont, createGraphics, createImage, createShader, createShape, createVector, curve, curveDetail, curvePoint, curveTangent, curveTightness, curveVertex, degrees, deltaTime, displayDensity, displayHeight, displayWidth, dist, doubleClicked, draw, ellipse, ellipseMode, endContour, endShape, exp, fill, filter, floor, focused, frameCount, frameRate, fullScreen, fullscreen, green, height, hue, image, imageMode, key, keyCode, keyIsDown, keyIsPressed, keyPressed, keyReleased, keyTyped, lerp, lerpColor, line, loadFont, loadImage, loadPixels, loadShader, log, loop, mag, map, max, min, motion, motionGravity, mouseButton, mouseClicked, mouseDragged, mouseMoved, mousePressed, mouseReleased, mouseWheel, mouseX, mouseY, noClip, noFill, noLoop, noSmooth, noStroke, noTint, noise, noiseDetail, noiseSeed, norm, pixelDensity, pixelHeight, pixelWidth, pixels, pmouseX, pmouseY, point, pop, popMatrix, popStyle, pow, printMatrix, push, pushMatrix, pushStyle, quad, quadraticVertex, radians, random, randomGaussian, randomSeed, rect, rectMode, red, redraw, renderMode, requestImage, resetMatrix, resetShader, rotate, rotateX, rotateY, rotateZ, round, saturation, save, scale, setTitle, setup, shader, shape, shapeMode, shearX, shearY, sin, size, smooth, sq, sqrt, square, stroke, strokeCap, strokeJoin, strokeWeight, tan, text, textAlign, textAscent, textDescent, textFont, textLeading, textSize, textWidth, texture, textureMode, textureWrap, tint, touchEnded, touchMoved, touchStarted, touches, translate, triangle, updatePixels, vertex, width, windowHeight, windowMove, windowMoved, windowOrientation, windowResizable, windowResize, windowResized, windowWidth, windowX, windowY

What’s New

Version 2.10

- With the support of the Ruby Association Development Grant, the following functions and class have been added
- createShape()
- shape()
- shapeMode()
- beginShape()
- endShape()
- beginContour()
- endContour()
- vertex()
- curveVertex()
- bezierVertex()
- quadraticVertex()
- texture()
- textureMode()
- textureWrap()
- loadPixels()
- updatePixels()
- pixels()
- textLeading()
- createFont()
- loadFont()
- requestImage()
- curveDetail()
- curvePoint()
- curveTangent()
- curveTightness()
- bezierDetail()
- bezierPoint()
- bezierTangent()
- rotateX()
- rotateY()
- rotateZ()
- shearX()
- shearY()
- applyMatrix()
- printMatrix()
- deltaTime
- hue()
- saturation()
- brightness()
- noiseSeed()
- noiseDetail()
- randomSeed()
- randomGaussian()
- fullscreen() (fullScreen())
- smooth()
- noSmooth()
- keyIsDown()
- keyIsPressed()
- mouseWheel()
- doubleClicked()
- Font.list()
- Graphics#clear()
- Graphics#save()
- Shape class
- Added links to the Processing/p5.js documentation in the class and method references
- Added Discord invite link for user support
- Reimplement the noise() for better compatibility
- scale() can take z parameter
- loadImage() raises Net::HTTPClientException instead of OpenURI::HTTPError
- Fixed that pushStyle()/popStyle() did not correctly manage colorMode, angleMode, and blendMode
- Fixed that Ruby documentation is in Japanese

Ratings and Reviews

4.6 out of 5
14 Ratings

14 Ratings

dokoissho ,

How do I get rid of ads?

Couldn’t find any explanation of this. Is it possible? The ads spoil the visuals.

Developer Response ,

Thank you for your review, we appreciate it!
We do have plans to add an in-app purchase feature to remove ads, but it will take a little longer to implement.
By the way, have you tried the full-screen button in the upper right corner of the execution screen? It maximizes the display and hides ads, so if you haven't tried it yet, using the full-screen button may meet your expectations 🙂

PS: Ads can now be removed in version 2.7, please try it! 😄

Kris Browne ,

Good for what it is, but so close to something greater

The editor and canvas for doing ruby graphic programming is quite good, I haven't run into any issues with it...

What I wish is that it went a little further - If we could edit the markdown, and have the code update the page, it would be a really solid ruby programmers notebook akin to Carnets or Jupyter, something I have been eagerly searching for.

App Privacy

The developer, Noritaka Suzuki, indicated that the app’s privacy practices may include handling of data as described below. For more information, see the developer’s privacy policy.

Data Used to Track You

The following data may be used to track you across apps and websites owned by other companies:

  • Location
  • Identifiers
  • Usage Data
  • Diagnostics

Data Linked to You

The following data may be collected and linked to your identity:

  • Location
  • Identifiers
  • Usage Data
  • Diagnostics

Data Not Linked to You

The following data may be collected but it is not linked to your identity:

  • Diagnostics

Privacy practices may vary, for example, based on the features you use or your age. Learn More

More By This Developer

You Might Also Like

Rubyist - Ruby Scripting
Developer Tools
LispPad Go
Developer Tools
Processing & p5.js iCompiler
Developer Tools
WisToolBox
Developer Tools
Shaderly - GLSL Shader Editor
Developer Tools
PocketJS
Developer Tools