{"action":"created","issue":{"url":"https://api.github.com/repos/github/gsoc/issues/15","labels_url":"https://api.github.com/repos/github/gsoc/issues/15/labels{/name}","comments_url":"https://api.github.com/repos/github/gsoc/issues/15/comments","events_url":"https://api.github.com/repos/github/gsoc/issues/15/events","html_url":"https://github.com/github/gsoc/issues/15","id":59733979,"number":15,"title":"About \"IDE and editor integrations to develop Atom Shell apps\"","user":{"login":"xfq","id":2863444,"avatar_url":"https://avatars.githubusercontent.com/u/2863444?v=3","gravatar_id":"","url":"https://api.github.com/users/xfq","html_url":"https://github.com/xfq","followers_url":"https://api.github.com/users/xfq/followers","following_url":"https://api.github.com/users/xfq/following{/other_user}","gists_url":"https://api.github.com/users/xfq/gists{/gist_id}","starred_url":"https://api.github.com/users/xfq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xfq/subscriptions","organizations_url":"https://api.github.com/users/xfq/orgs","repos_url":"https://api.github.com/users/xfq/repos","events_url":"https://api.github.com/users/xfq/events{/privacy}","received_events_url":"https://api.github.com/users/xfq/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-03-04T00:58:40Z","updated_at":"2015-03-06T08:29:04Z","closed_at":null,"body":"I have contacted @zcbenz privately and he suggested me creating an issue here for future questions about this project. I'll ask my questions as comments below. For questions that aren't very related to GSoC, I'll create issues in relevant repos (or topics in discuss.atom.io).\r\n\r\nFYI - here's the full quote of his mail:\r\n\r\n```\r\nSubject: Re: About GSoC 2015\r\nFrom: Cheng Zhao\r\nTo: Xue Fuqiao\r\n\r\nHi Fuqiao,\r\n\r\nYour contributions to open source are really impressive, and I'm glad to\r\nknow you want to write an Atom package!\r\n\r\nThe simplest idea of IDE/editor plugin to create an Atom Shell app and run\r\nit within a few clicks. And we can go further by adding ability to create\r\ndistributions or installers, or providing multiple templates of apps that\r\nusers can choose from.\r\n\r\nMany users request for a command line tool\r\n<https://github.com/atom/atom-shell/issues/804> to do that, so you can also\r\nwrite one and then wrap it with editor plugin.\r\n\r\nI don't have much requirements on what the editor plugin would be like, or\r\nwhich editor/IDE you would write plugin for, you have the freedom on most\r\nthings.\r\n\r\nFor how the template app would look like, you can have a try of\r\natom-shell-starter <https://github.com/atom/atom-shell-starter>, there is\r\nalso some interesting discussions there.\r\n\r\nFor future questions you can create an issue at\r\nhttps://github.com/github/gsoc, that repo is for GSoC related things, and\r\nother people can also help you there.\r\n\r\nCheng\r\n\r\nOn Tue, Mar 3, 2015 at 4:52 AM, Xue Fuqiao wrote:\r\n\r\n> Hi Cheng,\r\n>\r\n> (If you are more comfortable with Chinese, I can also write in\r\n> simplified Chinese in future mails.)\r\n>\r\n> I am a Chinese student and an Atom user. I'd like to work on Atom (or\r\n> related projects like Atom Shell and apm) under the GitHub umbrella\r\n> for GSoC 2015, especially this project:\r\n>\r\n>     * IDE and editor integrations to develop Atom Shell apps\r\n>     Summary: We would like to make developing Atom Shell apps easier\r\n> by providing integrations with popular IDEs and editors, it should\r\n> able users to create and debug Atom Shell apps without leaving the\r\n> developing environment. Examples are like Atom package, Visual Studio\r\n> extension, and WebStorm plugins.\r\n>     Expected Outcome: A working Atom package or IDE plugin for\r\n> developing Atom Shell apps.\r\n>\r\n> I'm really interested in text editors. I was an Emacs committer[1][2]\r\n> and pretester. I'm also the administrator of EmacsWiki.[3] In\r\n> addition, I contributed to some Emacs packages (such as\r\n> ergoemacs-mode[4]). Besides Emacs and Atom, I have also used editors\r\n> including (but not limited to) vi/Vim, Brackets[5], Sublime Text,\r\n> Zed[6], Bluefish[7], gedit[8], jEdit[9], and KWrite[10] for some time.\r\n>\r\n> I'm familiar with JavaScript and I've been learning/coding JavaScript\r\n> since 2006. Actually, ActionScript (which is a dialect of ECMAScript,\r\n> IIRC) was the first programming language I learned. Moreover, I've\r\n> contributed to some free and open-source JS projects (such as Firefox\r\n> OS), and edited many entries in MDN[11] in recent years. You can also\r\n> see me in the `about:credits` page of Firefox desktop/mobile/OS.\r\n>\r\n> I had previous experience of GSoC, too: I successfully participated in\r\n> GSoC 2013[12] and contributed many patches to Emacs before, during,\r\n> and after the GSoC coding period.\r\n>\r\n> You may also see some of my contributions to FOSS here:\r\n> https://www.openhub.net/accounts/xfq\r\n>\r\n> For this year's GSoC project, I plan to write a working Atom package\r\n> for developing Atom Shell apps.\r\n>\r\n> I like Atom very much and it's my main editor now. I've reported some\r\n> issues[13][14] and contributed some minor patches[15][16] to Atom and\r\n> its related projects. Currently, I'm learning Atom Shell and trying\r\n> building some simple packages for Atom. I'll do some research and\r\n> write a proposal for the editor/IDE integration project in the next\r\n> few days. In the meantime, I'll also keep reading discuss.atom.io and\r\n> join the #atom-shell channel on Freenode.\r\n>\r\n> BTW, I have a question: which kind of editor/IDE integration is needed\r\n> for Atom Shell? Pull `atom-shell` from npm and generate a directory\r\n> like https://github.com/dougnukem/hello-atom? Run Atom Shell apps with\r\n> a single command/click? Or something else? Would you please share your\r\n> conceptions so that we can discuss and research this idea in as much\r\n> detail as possible (such as the scope of the integration, including\r\n> which parts are critical versus optional for the summer timeline).\r\n>\r\n> Can you point me in the right direction? Thank you very much!\r\n>\r\n> [1] https://savannah.gnu.org/users/xfq\r\n> [2]\r\n> http://git.savannah.gnu.org/cgit/emacs.git/tree/etc/AUTHORS?id=emacs-24.4#n4432\r\n> [3] http://www.emacswiki.org/emacs/EmacsWikiAdministrators\r\n> [4] https://github.com/ergoemacs/ergoemacs-mode\r\n> [5] http://brackets.io/\r\n> [6] http://zedapp.org/\r\n> [7] http://bluefish.openoffice.nl/index.html\r\n> [8] https://wiki.gnome.org/Apps/Gedit\r\n> [9] http://www.jedit.org/\r\n> [10] https://www.kde.org/applications/utilities/kwrite/\r\n> [11] https://developer.mozilla.org/en-US/dashboards/revisions?user=xfq\r\n> [12]\r\n> https://www.google-melange.com/gsoc/project/details/google/gsoc2013/xfq/5885170347409408\r\n> [13] https://github.com/atom/atom/issues?q=is%3Aissue+author%3Axfq+\r\n> [14] https://github.com/atom/tree-view/issues?q=is%3Aissue+author%3Axfq+\r\n> [15] https://github.com/atom/atom/pulls?q=is%3Apr+author%3Axfq+\r\n> [16]\r\n> https://github.com/atom/atom-shell/commit/5083a7505dd8d7b1f90aad0a182b80f85e70885d\r\n>\r\n```"},"comment":{"url":"https://api.github.com/repos/github/gsoc/issues/comments/77523261","html_url":"https://github.com/github/gsoc/issues/15#issuecomment-77523261","issue_url":"https://api.github.com/repos/github/gsoc/issues/15","id":77523261,"user":{"login":"xfq","id":2863444,"avatar_url":"https://avatars.githubusercontent.com/u/2863444?v=3","gravatar_id":"","url":"https://api.github.com/users/xfq","html_url":"https://github.com/xfq","followers_url":"https://api.github.com/users/xfq/followers","following_url":"https://api.github.com/users/xfq/following{/other_user}","gists_url":"https://api.github.com/users/xfq/gists{/gist_id}","starred_url":"https://api.github.com/users/xfq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xfq/subscriptions","organizations_url":"https://api.github.com/users/xfq/orgs","repos_url":"https://api.github.com/users/xfq/repos","events_url":"https://api.github.com/users/xfq/events{/privacy}","received_events_url":"https://api.github.com/users/xfq/received_events","type":"User","site_admin":false},"created_at":"2015-03-06T08:29:04Z","updated_at":"2015-03-06T08:29:04Z","body":"> Both Atom and its core modules are written in CoffeeScript and we should use the same language for the command line tool. You may start from learning how apm works, which is the command line tool for managing and creating Atom packages.\r\n\r\nOK. Although I haven't written any real-world application in CoffeeScript, I know its syntax. I'll look into apm later. Thanks for the hint."}}