gRPC Summer of Code Project Ideas
Hello students!
We want gRPC to be the universal remote procedure call protocol for all computing platforms and paradigms, so while these are our ideas of what we think would make good projects for the summer, we're eager to hear your ideas and proposals as well. Try us out and get to know the gRPC code and team!
Required skills for all projects: git version control, collaborative software development on github.com, and software development in at least one of gRPC's ten languages on at least one of Linux, Mac OS X, and Windows.
gRPC C Core:
- Port gRPC to one of the major BSD platforms (FreeBSD, NetBSD, and OpenBSD) and create packages for them. Add kqueue support in the process.
gRPC Python:
- Port gRPC Python to PyPy. Investigate the state of Cython support to do this or potentially explore cffi.
- Develop and test Python 3.5 Support for gRPC. Make necessary changes to port gRPC and package it for supported platforms.
gRPC Ruby/Java:
- jRuby support for gRPC. Develop a jRuby wrapper for gRPC based on grpc-java and ensure that it is API compatible with the existing Ruby implementation and passes all tests.
gRPC Wire Protocol:
- Develop a Wireshark plugin for the gRPC protocol. Provide documentation and tutorials for this plugin.
- Bonus: consider set-up and use with mobile clients.
- Required skills: Wireshark software.
- Likely mentors: Nicolas Noble.