# LogoTurtle
[![Build Status](https://travis-ci.com/DoctorLai/LogoTurtle.svg?branch=master)](https://travis-ci.com/DoctorLai/LogoTurtle)
[![GitHub license](https://img.shields.io/badge/license-GPL-blue.svg)](https://github.com/DoctorLai/LogoTurtle/blob/master/LICENSE)

I believe this is the First Open Source Logo Programming in Chrome Extension.

# NPM 
The following two classes have been exported to NPM:
- `LogoCanvas` in `js/logocanvas.js`
- `LogoParser` in `js/logoparser.js`

![](https://helloacm.com/wp-content/uploads/2018/03/logo-spiral.jpg)
![](https://github.com/DoctorLai/LogoTurtle/blob/master/images/if-else.jpg?raw=true)
![](https://github.com/DoctorLai/LogoTurtle/blob/master/images/for.jpg?raw=true)
![](https://helloacm.com/wp-content/uploads/2018/03/logo-tree.jpg)

# Install
Just install via [Chrome Webstore](https://chrome.google.com/webstore/detail/logo-turtle/dcoeaobaokbccdcnadncifmconllpihp).

# Unit Tests
Unit tests are based on `mocha` and `chai`.  Run all tests: `npm run test`.

# Webpack
Using `npm run build` to pack to `dist/dist.min.js`

# Install on Firefox or other browsers?
It should work, but not fully tested on Firefox via [Chrome Extension Foxified](https://addons.mozilla.org/en-GB/firefox/addon/chrome-store-foxified/).

# Install Unpacked Versions
- Zipped releases: https://github.com/DoctorLai/LogoTurtle/releases 
- Download the zip and then you can load unpacked version in Chrome. (under development mode)

# Contribution Welcome
Github: https://github.com/DoctorLai/LogoTurtle/
1. Fork it!
2. Create your feature branch: `git checkout -b my-new-feature`
3. Commit your changes: `git commit -am 'Add some feature'`
4. Push to the branch: `git push origin my-new-feature`
5. Submit a pull request.

# Blog Posts
- v0.0.15: [The GOTO Keyword in LOGO Turtle Programming](https://helloacm.com/the-goto-keyword-in-logo-turtle-programming/)
- v0.0.14: [Turtle Programming: Add Status Bar, Add Repcount and Bug Fixes](https://helloacm.com/logoturtle-v0-0-14-add-status-bar-add-repcount-and-bug-fixes/)
- v0.0.13: [Turtle Programming: Support RGB, Add ShortCodes, Global Procedures Editor](https://helloacm.com/turtle-programming-v0-0-13-support-rgb-add-shortcodes-global-procedures-editor/)
- v0.0.12: [Turtle Programming: Powerful For Loop, INC, DEC, and on NPM!](https://helloacm.com/turtle-programming-v0-0-12-powerful-for-loop-inc-dec-and-on-npm/)
- v0.0.11: [Turtle Programming: While Loop, Do/Else Loop and Unit Tests Added](https://helloacm.com/turtle-programming-while-loop-do-else-loop-and-unit-tests-added/)
- v0.0.10: [Turtle Programming: Fractal Stars, Random, Console, Eraser, SetPC, SetXY, Examples, Wait, Bug Fixes and So much more!](https://helloacm.com/turtle-programming-fractal-stars-random-console-eraser-setpc-setxy-examples-wait-bug-fixes-and-so-much-more/)
- v0.0.9: [Turtle Programming v0.0.9: Add SetX, SetY, Square and Rect!](https://helloacm.com/turtle-programming-v0-0-9-add-setx-sety-square-and-rect/)
- v0.0.8: [Turtle Programming v0.0.8: comments, dotxy, and javascript!](https://helloacm.com/turtle-programming-v0-0-8-comments-dotxy-and-javascript/)
- v0.0.7: [Turtle Programming v0.0.7:  Functions with Parameters + Recursion!](https://helloacm.com/turtle-programming-v0-0-7-functions-with-parameters-recursion/)
- v0.0.6: [Turtle Programming v0.0.6: Adding Circle, MoveTo, Turn and Screen!](https://helloacm.com/turtle-programming-v0-0-6-adding-circle-moveto-turn-and-screen/)
- v0.0.5: [Turtle Programming v0.0.5: Adding IF/ELSE and STOP!](https://helloacm.com/turtle-programming-v0-0-5-adding-if-else-and-stop/)
- v0.0.4: [LogoTurtle: Make Variables and Comments](https://helloacm.com/logoturtle-make-variables-and-comments/)
- v0.0.3: [Turtle Graphics Programming Update: Adding text, jump, dot, fontsize, download as png](https://helloacm.com/turtle-graphics-programming-update-adding-text-jump-dot-fontsize-download-as-png/)
- v0.0.2: [LogoTurtle v0.0.2: ShowTurtle, HideTurtle, Color, Width and Help](https://helloacm.com/logoturtle-v0-0-2-showturtle-hideturtle-color-width-and-help/).
- v0.0.1: 
 [Teach Your Kids Programming - The First Logo Interpreter (Turtle Graphics) in Chrome Extension!](https://helloacm.com/teach-your-kids-programming-the-first-logo-interpreter-turtle-graphics-in-chrome-extension/)