This last week has been especially productive. First, like I mentioned the week before, I extended the coverage of the Node.js Wrapper to include more callbacks [1]. Moreover, up until now, I had been using a "hacky" way of registering C++ functions (so that they can be called from Node.js). I learnt that SWIG (the software I used to generate the wrapper) has the exact feature I was try to simulate with my hacks (namely Typemaps). After some time figuring typemaps out, I was able to use them for my purpose and removed the hacky parts from my code [2].
I also worked on writing a Node.js module that is easy to use and abstracts away internal calls a consumer of the API doesn't necessarily need to know. This module can now be included and used by others in their Node.js projects [3]. It is very basic right now, but I'm adding to it! Finally, I passed the first GSoC Evaluations! It has been an excellent experience up till now and I have learnt so much. I hope it continues to go this well. [1] https://gerrit-ring.savoirfairelinux.com/#/c/7203/ <https://rb.tc/27J14#https://gerrit-ring.savoirfairelinux.com/#/c/7203/> [2] https://gerrit-ring.savoirfairelinux.com/#/c/7207/ <https://rb.tc/27J15#https://gerrit-ring.savoirfairelinux.com/#/c/7207/> [3] https://gerrit-ring.savoirfairelinux.com/#/c/7222/ <https://rb.tc/27J16#https://gerrit-ring.savoirfairelinux.com/#/c/7222/> On Tue, Jun 27, 2017 at 5:31 PM, Asad Salman <[email protected]> wrote: > Here's an update on my project: > > There are two basic building blocks we needed working to wrap the C++ > Daemon in a Node.js API, those were actual API calls and the JavaScript > callbacks. I have successfully got both working now (though callbacks were > the challenging bit). > My task now is two-pronged: > > 1. Extending the coverage of the Node.js Wrapper to include more of > the Ring Daemon functions > 2. Organize the Node.js module so that it can easily be included and > used in other Node.js based projects (thus leading the way to an Electron > client) > > The above two will be my goals for the coming few weeks. > > On Mon, May 15, 2017 at 1:46 PM, Asad Salman <[email protected]> wrote: > >> Hello everyone! >> I am Asad Salman from School of EE & CS, NUST, Islamabad, Pakistan >> (UTC+5). This year, I'll be working on Ring as part of Google Summer of >> Code under the tutelage of Adrien Béraud. >> >> A lot of Ring development time is spent on developing and maintaining >> different clients on different OS. Every time we have to integrate a new >> feature, we have to integrate it in different clients in different >> environments (with different available APIs). This wastes a lot of time >> that can be spent on better things. Also, this way some clients are left >> behind (e.g. Mac client). >> >> My project >> <https://summerofcode.withgoogle.com/projects/#4909343647465472> is on >> writing a NodeJS wrapper around the Ring Daemon. Such a wrapper will allow >> cross-platform Ring clients to be developed using frameworks like Electron. >> >> I'd love to hear any suggestions you guys may have related to the >> project. I look forward to working on this project with the Ring developers. >> >> -Asad >> > >
