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
>>
>
>

Reply via email to