Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

jslogo - Logo in JavaScript

This is hosted at for playing with live.

Language Reference - this attempts to implement a subset of UCBLogo defined in in Brian Harvey's Computer Science Logo Style

Logo Examples

to star repeat 5 [ fd 100 rt 144 ] end
to square :length repeat 4 [ fd :length rt 90 ] end
repeat 36 [ square 50 rt 10 ]
to randomcolor setcolor pick [ red orange yellow green blue violet ] end
repeat 36 [ randomcolor square random 200 rt 10 ]
window pu repeat 72 [ setlabelheight repcount fd repcount * 2.5 label "Logo bk repcount * 2.5 rt 10 ]

Logo Links

To Do

  • Document deviations from UCB Logo standard
  • Make these examples all work: Logo 15-word challenge
  • Tail-call optimization
  • Make execution async so you can watch the turtle move