diff options
Diffstat (limited to 'template/gsoc-2018-gnunet-webui.html.j2')
-rw-r--r-- | template/gsoc-2018-gnunet-webui.html.j2 | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/template/gsoc-2018-gnunet-webui.html.j2 b/template/gsoc-2018-gnunet-webui.html.j2 new file mode 100644 index 00000000..c96b9965 --- /dev/null +++ b/template/gsoc-2018-gnunet-webui.html.j2 | |||
@@ -0,0 +1,117 @@ | |||
1 | {% extends "common/base.j2" %} | ||
2 | {% block body_content %} | ||
3 | <article class="d-flex flex-column p-2 bd-highlight"> | ||
4 | <div class="container"> | ||
5 | <div class="text-center"> | ||
6 | <header> | ||
7 | <h1>{{ _("GSoC 2018: GNUnet WebUI") }}</h1> | ||
8 | </header> | ||
9 | <br /> | ||
10 | <p> | ||
11 | {% trans %} | ||
12 | Tue, 08/14/2018 - 07:55, Phil Buschmann | ||
13 | {% endtrans %} | ||
14 | </p> | ||
15 | </div> | ||
16 | <p> | ||
17 | {% trans %} | ||
18 | <strong>What was done?</strong><br /> | ||
19 | In the context of Google Summer of Code 2018, my mentor | ||
20 | (Martin Schanzenbach) and I have worked on creating and | ||
21 | extending the REST API of GNUnet. Currently, we mirrored | ||
22 | the functionality of following commands: | ||
23 | {% endtrans %} | ||
24 | </p> | ||
25 | <p> | ||
26 | gnunet-identity<br /> | ||
27 | gnunet-namestore<br /> | ||
28 | gnunet-gns<br /> | ||
29 | gnunet-peerinfo | ||
30 | </p> | ||
31 | <p> | ||
32 | {% trans %} | ||
33 | Additionally, we developed a website with the Javascript | ||
34 | framework Angular 6 and the design framework iotaCSS to use | ||
35 | the new REST API. The REST API of GNUnet is now documented | ||
36 | with Sphinx. | ||
37 | {% endtrans %} | ||
38 | </p> | ||
39 | <p> | ||
40 | {% trans %} | ||
41 | <strong>Why did we create a REST API?</strong><br /> | ||
42 | ... when you can use the command line tools?<br /> | ||
43 | We need to keep in mind, that everyone has the right to stay secure | ||
44 | and private but not everyone feels comfortable using a terminal. The | ||
45 | further developed REST access to GNUnet APIs in addition to the new | ||
46 | web application allows new users to interact with GNUnet over a well | ||
47 | known tool: their browsers. This addition to the C API and the command | ||
48 | line tools may attract new users and developers. | ||
49 | {% endtrans %} | ||
50 | </p> | ||
51 | <p> | ||
52 | {% trans %} | ||
53 | <strong>How can we use it?</strong><br /> | ||
54 | 1. The REST API developed in GNUnet<br /> The REST API is | ||
55 | already merged into the gnunet.git repository | ||
56 | (<a href="https://gnunet.org/git/gnunet.git/">GNUnet Main Git</a>).<br /> | ||
57 | To use the new features, clone the repository | ||
58 | and follow the <a href="https://gnunet.org/installation">Installation</a> | ||
59 | on gnunet.org. Then, start the rest service with "gnunet-arm -i rest". | ||
60 | {% endtrans %} | ||
61 | </p> | ||
62 | <p> | ||
63 | {% trans %} | ||
64 | 2. The Web Application<br /> | ||
65 | The web application is available under the gnunet-webui.git | ||
66 | repository | ||
67 | (<a href="https://gnunet.org/git/gnunet-webui.git/">GNUnet WebUI Git</a>).<br /> | ||
68 | You need to install the newest version of 'node' and | ||
69 | 'yarn'. Dependent on your system, you may need to download | ||
70 | newer versions and install them manually and not over your | ||
71 | packet manager. After the installation succeeded, you need to | ||
72 | clone the repository. Then, you need to run "yarn install" and | ||
73 | "yarn start" for testing purposes. To deploy the website (keep | ||
74 | in mind, that this website communicates with another localhost | ||
75 | instance) use "yarn build" for building the web application | ||
76 | and use the output in the 'dist' directory. | ||
77 | {% endtrans %} | ||
78 | </p> | ||
79 | <p> | ||
80 | {% trans %} | ||
81 | 3. The Documentation<br /> | ||
82 | The documentation is available under the gnunet-rest-api.git | ||
83 | repository | ||
84 | (<a href="https://gnunet.org/git/gnunet-rest-api.git/">GNUnet REST API Docmentation Git</a>).<br /> | ||
85 | Clone the repository | ||
86 | and "make html". Then open the 'index.html' under | ||
87 | 'build/html/'. | ||
88 | {% endtrans %} | ||
89 | </p> | ||
90 | <p> | ||
91 | {% trans %} | ||
92 | Please, give it a try and contact me, if you find any | ||
93 | bugs or unintentional features. ;) | ||
94 | {% endtrans %} | ||
95 | </p> | ||
96 | <p> | ||
97 | {% trans %} | ||
98 | <strong>What can be improved?</strong><br /> | ||
99 | Right now, the build process of the web application may be a | ||
100 | little too complex for a casual user. We may be able to solve | ||
101 | this by using docker.<br /> Additionally, the web application | ||
102 | does not prevent wrong inputs but responds with error | ||
103 | messages. Adding GNUnet Records is currently only usable for | ||
104 | people, who know how a GNS Record looks like. This can be | ||
105 | adapted to each record type.<br /> | ||
106 | Last but not least, additional features, design changes, | ||
107 | etc... | ||
108 | {% endtrans %} | ||
109 | </p> | ||
110 | <p> | ||
111 | {% trans %} | ||
112 | Thanks for reading. | ||
113 | {% endtrans %} | ||
114 | </p> | ||
115 | </div> | ||
116 | </article> | ||
117 | {% endblock body_content %} | ||