Difference between revisions of "Summer of Code/2015/Interactive JS Shell"

From Sugar Labs
Jump to navigation Jump to search
Line 24: Line 24:
 
* What is the timeline for development of your project? The Summer of Code work period is from May 19 - August 22; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (27 June); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.
 
* What is the timeline for development of your project? The Summer of Code work period is from May 19 - August 22; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (27 June); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.
 
* Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant.
 
* Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant.
 +
 +
Till Week 0 : I have been looking into existing interactive web based code compilation platforms. We can use NodeJS’s child_process api compile and execute any language code including JS.
 +
Week 1 - 2 : Complete the basic UI of the web based code editor and the virtual commandline tool. Write the server code using NodeJS that is to be installed on the local server. The web UI will communicate with this server using JS & jQuery.
 +
Week 3 : Add support for creating local repositories/folder and saving codes to files.
 +
Week 4 - 5 : Create the GUI tool for teacher to make step by step tutorials. These would be stored in the server as JSON format so that it can be loaded on XO using the Interactive Shell.
 +
Week 6 - 8 : Visual Debugger - Debugging skills are of greater importance than to just write the code. There will always be bugs and errors in a code freshly written. The application must have a visual debugger in the interactive JS Shell. I am thinking of using this tool for this purpose. https://github.com/adobe-research/theseus
 +
Week 9 : Solely for error fixing and finishing up anything left from the last weeks.
 +
Week 10 : Sanbox
 +
Week 7 : Provision for addition of other languages.
 +
Week 8 : Take the required security measures for the web application.
 +
Last two Weeks : Create the minimal Documentation.

Revision as of 00:36, 25 March 2015

About You

  • What is your name?

Bishal Santra

  • What is your email address?

bsantraigi@gmail.com

  • What is your Sugar Labs wiki username?

Bytestorm

  • What is your IRC nickname on irc.freenode.net?
  • What is your first language? (We have mentors who speak multiple languages and can match you with one of them if you'd prefer.)

Bengali/Hindi

  • Where are you located, and what hours (UTC) do you tend to work? (We also try to match mentors by general time zone if possible.)

India

  • Have you participated in an open-source project before? If so, please send us URLs to your profile pages for those projects, or some other demonstration of the work that you have done in open-source. If not, why do you want to work on an open-source project this summer?

No, this is my first time.

About your project[edit | edit source]

  • What is the name of your project?

Interactive Javascript Shell

  • Describe your project in 10-20 sentences. What are you making? Who are you making it for, and why do they need it? What technologies (programming languages, etc.) will you be using?

The main aim of the project is to create an platform that can be used to run Javascript or code written in any other language to be compiled and run immediately.

I would very much like to extend the idea to make a very flexible application and with some more features. I propose an application that would provide an easy interface to create web based(HTML5/CSS & JS, runnable on any supported browser) interactive tutorials that can be installed on any local (or remote host) server machine to host the created tutorials for learning programming languages.

  • What is the timeline for development of your project? The Summer of Code work period is from May 19 - August 22; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (27 June); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.
  • Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant.

Till Week 0 : I have been looking into existing interactive web based code compilation platforms. We can use NodeJS’s child_process api compile and execute any language code including JS. Week 1 - 2 : Complete the basic UI of the web based code editor and the virtual commandline tool. Write the server code using NodeJS that is to be installed on the local server. The web UI will communicate with this server using JS & jQuery. Week 3 : Add support for creating local repositories/folder and saving codes to files. Week 4 - 5 : Create the GUI tool for teacher to make step by step tutorials. These would be stored in the server as JSON format so that it can be loaded on XO using the Interactive Shell. Week 6 - 8 : Visual Debugger - Debugging skills are of greater importance than to just write the code. There will always be bugs and errors in a code freshly written. The application must have a visual debugger in the interactive JS Shell. I am thinking of using this tool for this purpose. https://github.com/adobe-research/theseus Week 9 : Solely for error fixing and finishing up anything left from the last weeks. Week 10 : Sanbox Week 7 : Provision for addition of other languages. Week 8 : Take the required security measures for the web application. Last two Weeks : Create the minimal Documentation.