diff options
author | ng0 <ng0@n0.is> | 2019-03-22 12:30:10 +0000 |
---|---|---|
committer | ng0 <ng0@n0.is> | 2019-03-22 12:30:10 +0000 |
commit | b9d3f0a1f804ab6a5863014ab5a7353a894335da (patch) | |
tree | 3e0798361fe9929c259532913740de228d2d87b5 | |
parent | 5867aa933ae5f1a73d41a210b94de6359f280edd (diff) |
Import older gsoc
-rw-r--r-- | template/gsoc.html.j2 | 331 |
1 files changed, 321 insertions, 10 deletions
diff --git a/template/gsoc.html.j2 b/template/gsoc.html.j2 index 7d4a19ea..312d6153 100644 --- a/template/gsoc.html.j2 +++ b/template/gsoc.html.j2 @@ -23,7 +23,10 @@ It is time for GNUnet to run properly on Android. Note that GNUnet is written in C, and this is not about rewriting GNUnet in Java, but about getting the C code to run on Android. - <br> + {% endtrans %} + </p> + <p> + {% trans %} Mentor: <a href="https://www.goebel-consult.de/">Hartmut Goebel</a> {% endtrans %} </p> @@ -41,7 +44,10 @@ regression analysis. Running jobs only when dependencies have changed and scripting more granular triggers or ideally automatic dependency discovery (as done by the autotools) is also important. - <br> + {% endtrans %} + </p> + <p> + {% trans %} Mentor: TBD {% endtrans %} </p> @@ -158,16 +164,321 @@ {% endtrans %} </p> </section> + <!-- Past projects: Previously proposed, but left unfinished. Inspiration for students. --> + <h2>{{ _("Past projects") }}</h2> + <section> + <h4>Rust APIs for GNUnet services</h4> + <p> + {% trans %} + There are a variety of GNUNet APIs that should be + exposed in the Rust wrappers. Implementing these will + require extending the port of GNUNet utils written by + Andrew Cann and Kelong Cong. + {% endtrans %} + </p> + <p> + {% trans %} + As an introduction to the code base, we suggest that the + student and Jeff Burdges together update the + asynchronous IO system from gjio to futures-rs or + another layer built upon it. Jeff Burdges is expected + to concurrently be implementing a GNUNet API for his own + mix network work. + {% endtrans %} + </p> + <p> + {% trans %} + Mentors: Jeff Burdges + {% endtrans %} + </p> + <p> + {% trans %} + Required Skills: Rust + {% endtrans %} + </p> + <p> + {% trans %} + Difficulty level: low + {% endtrans %} + </p> + </section> + <section> + <h3>Tor compatibility for GNUnet</h3> + <p> + {% trans %} + Implement the AnycastExit spec to enable GNUnet clients + to connect over Tor. + {% endtrans %} + </p> + <p> + {% trans %} + Mentor: Jeff Burdges + {% endtrans %} + </p> + <p> + {% trans %} + Note: There was a Special TLDs spec to allow Tor to + resolve domain names using GNS over Tor too, but + currently that's on hold until folks think more about + how names should be moved around the local system. We're + calling this more collaborative approach NSS2 for now. + {% endtrans %} + </p> + <p> + {% trans %} + Required Skills: C + {% endtrans %} + </p> + <p> + {% trans %} + Difficulty level: medium + {% endtrans %} + </p> + </section> + <section> + <h3>Android compatibility for GNUnet</h3> + <p> + {% trans %} + Implement rudimentary Android compatibility for GNUnet, + in part by porting the GNUnet utils scheduler to act as + a thin wrapper over libuv. + {% endtrans %} + </p> + <p> + {% trans %} + Mentors: Jeff Burdges and Christian Grothoff + {% endtrans %} + </p> + </section> + <section> + <h3>Implementation of a replacement for PANDA</h3> + <p> + {% trans %} + Implementation of a replacement for PANDA (see Pond) + with better security, and maybe integration with the GNU + Name System for key exchange. + {% endtrans %} + </p> + <p> + {% trans %} + Mentor: Jeff Burdges + {% endtrans %} + </p> + <p> + {% trans %} + Required Skills: Rust or C, crypto + {% endtrans %} + </p> + <p> + {% trans %} + Difficulty level: high + {% endtrans %} + </p> + </section> + <section> + <h3>GNUnet Web-based User Interface</h3> + <p> + {% trans %} + Implementation of a Web-based UI for GNUnet similar to + GNUnet-Gtk with a yet to be determined framework such as + Angular2. This includes the design and implementation of + not yet existing <a href="http://jsonapi.org/">REST APIs</a> + that expose the + <a href="https://gnunet.org/doxygen/modules.html">GNUnet API</a>. + {% endtrans %} + </p> + <p> + {% trans %} + Mentor: Martin Schanzenbach + {% endtrans %} + </p> + <p> + {% trans %} + Required Skills: C, JavaScript, CSS + {% endtrans %} + </p> + <p> + {% trans %} + Difficulty level: medium + {% endtrans %} + </p> + </section> + <section> + <h3>secushare: Implement social networking features on top of pubsub channels</h3> + <p> + {% trans %} + Implement different place types and file sharing by + creating a new place for the shared content. + {% endtrans %} + </p> + <p> + {% trans %} + Place types to be implemented: + {% endtrans %} + </p> + {% trans %} + <ul> + <li>File: generic file with comments</li> + <li>Image: display an image with comments referencing a region of the image</li> + <li>Sound: play a sound file with comments referencing a timestamp</li> + <li>Directory/Album: pointers to File / Image / Sound places</li> + <li>Event: with RSVP</li> + <li>Survey: ask your social neighborhood questions in a structured form</li> + </ul> + {% endtrans %} + <p> + {% trans %} + Also provide the following UI functionality: + {% endtrans %} + </p> + {% trans %} + <ul> + <li>Fork existing channels, reorganize people into new chatrooms or channels.</li> + <li>Share a post (edit and repost something elsewhere, on a fan page for example).</li> + <li>Edit a previously published post + offer edit history to readers.</li> + <li>Control expiry of channel history.</li> + </ul> + {% endtrans %} + <p> + {% trans %} + See also <a href="http://secushare.org/features">http://secushare.org/features</a> + {% endtrans %} + </p> + <p> + {% trans %} + Mentors: lynX + {% endtrans %} + </p> + <p> + {% trans %} + Required Skills: C/C++ + {% endtrans %} + </p> + <p> + {% trans %} + Difficulty level: high + {% endtrans %} + </p> + </section> + <section> + <h4>secushare: Implement a Social Graph API for adoption and more</h4> + <p> + {% trans %} + Implement aggregation of distributed state from + various channels + in order to provide for a powerful social graph API capable of + producing social network profiles, dashboards, + a calendar out of + upcoming event invitations (if available), + social search functionality + and most of all to make it easy for users to + adopt cryptographic + identities of their contacts/friends simply by finding + them in the + social graph of their + existing contacts ("This is Linda. You have 11 + contacts in common with her. [ADD]"). + {% endtrans %} + </p> + <p> + {% trans %} + Related to + <a href="http://secushare.org/rendezvous">secushare.org/rendezvous</a> + {% endtrans %} + </p> + <p> + {% trans %} + Mentors: t3sserakt, lynX + {% endtrans %} + </p> + <p> + {% trans %} + Required Skills: C + {% endtrans %} + </p> + <p> + {% trans %} + Difficulty level: high + {% endtrans %} + </p> + </section> + <section> + <h4>secushare: Implement integration with tradition e-mail</h4> + {% trans %} + <ul> + <li> + Emulate IMAP/SMTP protocols as necessary to transform + traditional mail clients into secushare user + interfaces. + </li> + <li> + Think of ways to map e-mail addresses to secushare + identities. + </li> + <li> + Encode or translate various e-mail features into + secushare equivalents. + </li> + <li> + Parts of secushare are currently written in Rust, + therefore Rust is preferred for this task but it is + not an requirement. + </li> + </ul> + {% endtrans %} + <p> + {% trans %} + Mentors: t3sserakt, lynX + {% endtrans %} + </p> + <p> + {% trans %} + Required Skills: C + {% endtrans %} + </p> + <p> + {% trans %} + Difficulty level: high + {% endtrans %} + </p> + </section> + <section> + <h4>GNUnet auction</h4> + <p> + {% trans %} + Implementation of the GNUnet auction system described in + Chapter 3 of + <a href="https://gnunet.org/libbrand-thesis">this thesis</a>. + Specific tasks are adding smart + contract creation and round time enforcement to + libbrandt as well as creating the + GNUnet auction service, library and the three user interface + programs create, info and join. + {% endtrans %} + </p> + <p> + {% trans %} + Mentors: mate, cg + {% endtrans %} + </p> + <p> + {% trans %} + Required Skills: C + {% endtrans %} + </p> + <p> + {% trans %} + Difficulty level: medium + {% endtrans %} + </p> + </section> <!-- - Past projects: Previously proposed, but left - unfinished. Inspiration for students. - --> - <!-- <h2>{{ _("Past projects") }}</h2> --> + <h2>{{ _("Finished projects") }}</h2> + --> <!-- - Commentary: Finished projects, descriptions and - Links to write-ups about them. - --> - <!-- <h2>{{ _("Finished projects") }}</h2> --> + Commentary: Finished projects, descriptions and + Links to write-ups about them. + --> </div> </article> {% endblock body_content %} |