The Open Sourcing of TouchDevelop

I've highlighted TouchDevelop just a few times...

... so when I saw the announcement that the browser client code was not only released, but released under an MIT license...!

TouchDevelop goes open-source

The TouchDevelop project was inspired by the programmability of 8-bit computers of the 80s. This is how many in our team learned about programming and we wanted to bring that magic to modern touch-based devices. In very beginning, with our first Windows Phone 7 app, it was about programming your own device, 80s style.

Soon after, we have moved to the open web as the platform and added the capability to publish and share your programs (scripts) with other users in source form, so others can learn from and even improve upon them. We believe this openness has helped the platform quite a bit, with over 200,000 scripts published over the past 3 years.

Today, we’re taking another step on this path – we’re releasing the TouchDevelop web app under the MIT license. The team at Microsoft Research remains dedicated to leading its further development, but you, our users, fellow researchers, and hackers of the world, are invited to contribute.

image

Join the party!

TouchDevelop sits in a GitHub repository. You can fork it there, submit pull requests with bug-fixes or new features, submit and comment on issues in the bug-tracker, and check on latest activity. TouchDevelop consists of about 160,000 lines of TypeScript plus some CSS and a tiny bit of HTML. There are instructions about building and running it on our GitHub page.

What’s not there

You’ll notice we’re not releasing the source of our Windows Phone and Android apps, as they will become obsolete very soon, when we switch to Apache Cordova. Also, running a cloud back-end for a major service like TouchDevelop is costly and complicated. We’re thus not expecting you to do that (and we’re not releasing the back-end). Instead, you can run your forked version of the TouchDevelop client web app against our cloud services. This will work as long as you’re running the client on localhost. If you want to run it from a different domain, drop us an email and we can talk about it.

...

Microsoft/TouchDevelop

image

image

TouchDevelop is a touch-friendly app creation environment for iPad, iPhone, Android, Windows, Mac, Linux developed with <3 at Microsoft Research. Our mobile-friendly editor makes coding fun, even on your phone or tablet!

...

This repo contains the source code of the TouchDevelop editor. If you are intending to write TouchDevelop scripts, you probably want to go to touchdevelop.com:

If you want to always run the latest build,

The make sure which version you're running, tap the small copyright/legal/version bar in the bottom right, and then the latest changes button. This will give you the changes that went into your current version, and in particular if the fix for your submitted issue is in. If the expected change is not there, try reloading the page. Keep in mind that the build process takes a few minutes.

Other pages of interest:

What's in this repo?

The repo is mostly written in Typescript with tiny pieces of HTML gluing.

This repo contains the source code for:

  • the browser client
    • the compiler
    • the editor
    • the runtime
  • the node.js client

However, you will not find the cloud backend code here. Indeed, https://www.touchdevelop.com takes care of storing and managing the scripts.

Contributing

There are many ways to contribute to TouchDevelop.

If you're not a developer but still would like to help, we've got more tasks for you!

Building

In order to build TouchDevelop, ensure that you have Git and Node.js installed.

...

Running ...

Tests ...

Cleaning ...

Editing ...

Documentation ...

More handy commands ...

The various directories in the tree ...

Structure of the generated website / app ...



Tags:

Follow the discussion

  • Oops, something didn't work.

    Getting subscription
    Subscribe to this conversation
    Unsubscribing
    Subscribing

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.