[tor-commits] [community/develop] Fix gosc template and contents files

hiro at torproject.org hiro at torproject.org
Thu Jan 23 16:44:42 UTC 2020


commit e97a3f2207b92097045ac4e61274ae681121eb8b
Author: hiro <hiro at torproject.org>
Date:   Thu Jan 23 17:41:07 2020 +0100

    Fix gosc template and contents files
---
 .../gsoc/cloudflare-captcha-monitoring/contents.lr | 10 ++--
 content/gsoc/contents.lr                           |  6 +-
 content/gsoc/onion-toolbox/contents.lr             |  8 ++-
 content/gsoc/privacy-friendly-web/contents.lr      | 17 +++---
 content/gsoc/tor-relay-ipv6-support/contents.lr    |  8 ++-
 content/gsoc/tor-weather/contents.lr               | 20 +++----
 models/project.ini                                 | 16 ++++--
 templates/gsoc.html                                | 64 ++++++++--------------
 8 files changed, 75 insertions(+), 74 deletions(-)

diff --git a/content/gsoc/cloudflare-captcha-monitoring/contents.lr b/content/gsoc/cloudflare-captcha-monitoring/contents.lr
index e6ba0d5..e5b71a5 100644
--- a/content/gsoc/cloudflare-captcha-monitoring/contents.lr
+++ b/content/gsoc/cloudflare-captcha-monitoring/contents.lr
@@ -1,6 +1,8 @@
 _model: project
 ---
-_template: project.html
+_template: layout.html
+---
+html: two-columns-page.html
 ---
 active: True
 ---
@@ -20,12 +22,12 @@ difficulty: medium
 ---
 title: Cloudflare Captcha Monitoring
 ---
-summary:
+subtitle:
 
 We should track the rate that cloudflare gives captchas to Tor users over time.
 
 ---
-description: 
+body:
 
 My suggested way of doing that tracking is to sign up a very simple static webpage to be fronted by cloudflare, and then fetch it via Tor over time, and record and graph the rates of getting a captcha vs getting the real page.
 
@@ -44,4 +46,4 @@ but what I have in mind here is essentially a simpler subset of this research, s
 
 There are two interesting metrics to track over time: one is the fraction of exit relays that are getting hit with captchas, and the other is the chance that a Tor client, choosing an exit relay in the normal weighted faction, will get hit by a captcha.
 
-Then there are other interesting patterns to look for, e.g. "are certain IP addresses punished consistently and others never punished, or is whether you get a captcha much more probabilistic and transient?" And does that pattern change over time?
\ No newline at end of file
+Then there are other interesting patterns to look for, e.g. "are certain IP addresses punished consistently and others never punished, or is whether you get a captcha much more probabilistic and transient?" And does that pattern change over time?
diff --git a/content/gsoc/contents.lr b/content/gsoc/contents.lr
index 2e4ffb5..1e973f0 100644
--- a/content/gsoc/contents.lr
+++ b/content/gsoc/contents.lr
@@ -8,10 +8,14 @@ html: gsoc.html
 ---
 color: primary
 ---
+subtitle: Some projects ideas for GSoC.
+---
+cta: Get coding
+---
 key: 0
 ---
 title: Project Ideas
 ---
 body:
 
-You may find some of these projects to be good ideas for Google Summer of Code. We have labelled each idea with which of our core developers would be good mentors. If one or more of these ideas looks promising to you, please contact us to discuss your plans rather than sending blind applications.
\ No newline at end of file
+You may find some of these projects to be good ideas for Google Summer of Code. We have labelled each idea with which of our core developers would be good mentors. If one or more of these ideas looks promising to you, please contact us to discuss your plans rather than sending blind applications.
diff --git a/content/gsoc/onion-toolbox/contents.lr b/content/gsoc/onion-toolbox/contents.lr
index a551ba8..f9f0b8d 100644
--- a/content/gsoc/onion-toolbox/contents.lr
+++ b/content/gsoc/onion-toolbox/contents.lr
@@ -1,6 +1,8 @@
 _model: project
 ---
-_template: project.html
+_template: layout.html
+---
+html: two-columns-page.html
 ---
 active: True
 ---
@@ -20,7 +22,7 @@ difficulty: medium
 ---
 title: Onion Tool Box
 ---
-summary:
+subtitle:
 
 Myonion is a developer tool box, providing a command line interface and a GUI to configure and deploy existing services via .onion. A minimal prototype for myonion already [exists](https://github.com/hiromipaw/myonion).
 
@@ -29,7 +31,7 @@ Someone that may want to run an onion service can use the myonion wrapper app to
 Myonion can also be used to deploy the resulting configured app to a defined set of cloud providers.
 
 ---
-description: 
+body:
 
 ## Problem definition
 
diff --git a/content/gsoc/privacy-friendly-web/contents.lr b/content/gsoc/privacy-friendly-web/contents.lr
index da9cc13..6eab414 100644
--- a/content/gsoc/privacy-friendly-web/contents.lr
+++ b/content/gsoc/privacy-friendly-web/contents.lr
@@ -1,6 +1,8 @@
 _model: project
 ---
-_template: project.html
+_template: layout.html
+---
+html: two-columns-page.html
 ---
 active: True
 ---
@@ -12,7 +14,7 @@ color: primary
 ---
 key: 1
 ---
-languages: javascript
+languages: javascript, CSS, html, Python
 ---
 mentors: hiro
 ---
@@ -20,25 +22,24 @@ difficulty: medium
 ---
 title: Privacy Friendly Web
 ---
-summary:
+subtitle:
 
 The scope of this project is creating a open-source community-driven browsable list of patterns and release a css/js framework that web developers can extend and use in their work.
 ---
-description: 
+body:
 
 Security concerned web users take conscious steps to limit the amount of data they share with the websites visited and third party services.
 
 There are a number of security enhancing tools available. Some come in the form of browser extensions and javascript blockers, others are full fledged web browsers designed with providing extra security to their users.
 
-One of this is the Tor Browser. The Tor Browser was designed to provide privacy while surfing the web and defend users against both network and local forensic adversaries. There are two main categories of requirements that have been considered: Security Requirements, and Privacy Requirements. 
+One of this is the Tor Browser. The Tor Browser was designed to provide privacy while surfing the web and defend users against both network and local forensic adversaries. There are two main categories of requirements that have been considered: Security Requirements, and Privacy Requirements.
 
-Security Requirements are the minimum properties in order for a browser to be able to support Tor and similar privacy proxies safely. Privacy requirements are primarily concerned with reducing linkability: the ability for a user's activity on one site to be linked with their activity on another site without their knowledge or explicit consent. 
+Security Requirements are the minimum properties in order for a browser to be able to support Tor and similar privacy proxies safely. Privacy requirements are primarily concerned with reducing linkability: the ability for a user's activity on one site to be linked with their activity on another site without their knowledge or explicit consent.
 
 Websites can work seamsly with the Tor Browser and other privacy enhancing browsers and tools if they adopt a series of respectful and ethical patterns.
 
-The Tor Browser is in fact, based on Mozilla's Extended Support Release (ESR) Firefox branch. We have a series of patches against this browser to enhance privacy and security. Browser behavior is additionally augmented through the Torbutton extension, and we also change a number of Firefox preferences from their defaults. 
+The Tor Browser is in fact, based on Mozilla's Extended Support Release (ESR) Firefox branch. We have a series of patches against this browser to enhance privacy and security. Browser behavior is additionally augmented through the Torbutton extension, and we also change a number of Firefox preferences from their defaults.
 
 The Tor Project has developed over the years a set of web development guidelines that allow websites to work with security enhanced browsers without causing any or minimal functionality destruption to their users. These guidelines have been shaped in an internal styleguide that has been adopted across all torproject.org websites.
 
 We are now formalizing these web development patterns and some security concerns that need to be considered when developing websites for users surfing the web with security enhanced browsers and tools.
-
diff --git a/content/gsoc/tor-relay-ipv6-support/contents.lr b/content/gsoc/tor-relay-ipv6-support/contents.lr
index 3624ca1..3b0cd0f 100644
--- a/content/gsoc/tor-relay-ipv6-support/contents.lr
+++ b/content/gsoc/tor-relay-ipv6-support/contents.lr
@@ -1,6 +1,8 @@
 _model: project
 ---
-_template: project.html
+_template: layout.html
+---
+html: two-columns-page.html
 ---
 active: True
 ---
@@ -20,12 +22,12 @@ difficulty: Medium
 ---
 title: Improve Tor Relay IPv6 Support
 ---
-summary:
+subtitle:
 
 Tor helps people stay safe on the internet, by keeping their internet use secure and anonymous. More Tor clients are running on IPv6-only or dual-stack networks. But only 20% of Tor’s available relay bandwidth supports IPv6. We want to automate relay IPv6 address discovery and reachability checks, so that it is easier for relay operators to run IPv6 relays.
 
 ---
-description: 
+body:
 
 Students may choose to focus on designing and implementing core features, tor relay testing, reporting statistics, or diagnosing and fixing bugs.
 
diff --git a/content/gsoc/tor-weather/contents.lr b/content/gsoc/tor-weather/contents.lr
index 3bc6714..95aa94a 100644
--- a/content/gsoc/tor-weather/contents.lr
+++ b/content/gsoc/tor-weather/contents.lr
@@ -1,6 +1,8 @@
 _model: project
 ---
-_template: project.html
+_template: layout.html
+---
+html: two-columns-page.html
 ---
 active: True
 ---
@@ -20,12 +22,12 @@ difficulty: medium
 ---
 title: Tor Weather
 ---
-summary:
+subtitle:
 
 Tor Weather is the most efficient way to achieve and maintain a healthy Tor network on the long run.
 
 ---
-description: 
+body:
 
 Tor Weather was [discontinued on 2016-04-04](https://lists.torproject.org/pipermail/tor-relays/2016-April/009009.html), however "Tor Weather is still a good idea, it just needs somebody to implement it."
 
@@ -40,18 +42,18 @@ Relay operators and the entire tor network would benefit from a Tor Weather serv
 
 It also:
 - shows the relay operator that someone actually cares if their relays go down or become outdated or have another problem
-- gives the operator relay best-practices information. 
+- gives the operator relay best-practices information.
 
 ## Expected Effects
 
 If enough operators subscribe to such a service:
 - relays might become more long lived / the churn rate might decrease
 - the fraction of relays running outdated tor versions might decrease
-- the fraction of exits with broken DNS might decrease 
+- the fraction of exits with broken DNS might decrease
 
 It also has the benefit of being able to contact relay operators:
 - completely automatically
-- even if they choose to not set a public ContactInfo string in their torrc files. 
+- even if they choose to not set a public ContactInfo string in their torrc files.
 
 ## Ideas for Notification Types
 
@@ -76,7 +78,7 @@ _How long before we send a notification?_
 - [ ] email me about tor relay operator events
 
 
-*Task:* Write a specification describing the meaning of each checkbox 
+*Task:* Write a specification describing the meaning of each checkbox
 
 ## Security and Privacy Implications
 
@@ -85,6 +87,4 @@ The service stores email addresses of potential tor relay operators, they should
 ## Additional Ideas
 
 - easy: integration into tor: show the URL pointing to the new Tor Weather service like the current link to the lifecycle blogpost when tor starts and detects to be a new relay
-- Provide an uptimerobot-style status page for relay operators using onionoo data 
-
-
+- Provide an uptimerobot-style status page for relay operators using onionoo data
diff --git a/models/project.ini b/models/project.ini
index 8b286a0..2ee985e 100644
--- a/models/project.ini
+++ b/models/project.ini
@@ -14,7 +14,7 @@ type = url
 label = Active
 type = boolean
 
-[fields.summary]
+[fields.subtitle]
 label = Summary
 type = markdown
 
@@ -22,7 +22,7 @@ type = markdown
 label = Color
 type = string
 
-[fields.description]
+[fields.body]
 label = Description
 type = markdown
 
@@ -31,7 +31,7 @@ label = Mentors
 type = string
 
 [fields.languages]
-label = Languages 
+label = Languages
 type = string
 
 [fields.mentors]
@@ -40,4 +40,12 @@ type = string
 
 [fields.difficulty]
 label = Difficulty Level
-type = string
\ No newline at end of file
+type = string
+
+[fields.html]
+label = Html
+type = string
+
+[fields.key]
+label = key
+type = string
diff --git a/templates/gsoc.html b/templates/gsoc.html
index 1c1add9..ff0898a 100644
--- a/templates/gsoc.html
+++ b/templates/gsoc.html
@@ -1,41 +1,23 @@
-      {% include 'breadcrumb.html' %}
-      <div class="row flex-xl-nowrap">
-        <main role="main" class="mx-auto col-12 {{ bag('alternatives', this.alt, 'order') }}">
-            <div class="container py-3">
-            <div class="row">
-              <p>{{ this.body }}</p>
-            </div>
-          </div>
-          <div class="container py-3">
-            <h3 class="text-primary display-5">{{ _('Project Ideas') }}</h3>
-          </div>
-          <div class="container py-3">
-            <div class="accordion" id="accordionJobs">
-              {% from "macros/projects.html" import render_active %}
-              {% set items = this.children.filter(F.active == True).all() %}
-              {% for item in items %}
-              {{ render_active(item, this.alt) }}
-              {% endfor %}
-            </div>
-          </div>
-          <div class="container py-3">
-            <h3 class="text-primary display-5">{{ _('Previous Projects') }}</h3>
-          </div>
-          <div class="container py-3">
-            <div class="row">
-              <div class="col-85">
-                <ul class="jobs-ul">
-                  {% set items = this.children %}
-                  {% for item in items.filter(F.active == False) %}
-                  <li>{{ item.title }}</li>
-                  {% endfor %}
-                </ul>
-              </div>
-            </div>
-            <div class="row">
-              <p>{{ _('None of these ideas seem appealing? You may also want to propose your own project idea — which often results in the best projects.') }} <a href="mailto:gso at torproject.org">{{ _('We invite you to contact us to discuss your own project idea.') }}</a></p>
-            </div>
-          </div>
-        </main>
-      </div>
-    
\ No newline at end of file
+<div class="container py-5">
+  <div class="row py-5">
+    <div class="col-lg-12">
+      {{ this.body }}
+    </div>
+  </div>
+  <div class="row">
+    {% from "macros/projects.html" import render_active %}
+    {% for child in this.children.filter(F.active == True).all() %}
+      {{ render_active(child, this.alt) }}
+    {% endfor %}
+  </div>
+  <div class="row">
+    <ul>
+    {% from "macros/projects.html" import render_active %}
+    {% for child in this.children.filter(F.active == False).all() %}
+      <li>{{ item.title }}</li>
+    {% endfor %}
+  </div>
+  <div class="row py-5 text-center mx-auto">
+    <p class="text-center">{{ _('None of these ideas seem appealing? You may also want to propose your own project idea — which often results in the best projects.') }} <a href="mailto:gso at torproject.org">{{ _('We invite you to contact us to discuss your own project idea.') }}</a></p>
+  </div>
+</div>





More information about the tor-commits mailing list