Skip to content

Commit 285aa2c

Browse files
authored
Merge branch 'master' into move
2 parents 4877fc6 + b095ea0 commit 285aa2c

File tree

13 files changed

+472
-103
lines changed

13 files changed

+472
-103
lines changed

Pipfile

+3
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ verify_ssl = true
55

66
[packages]
77
black = "==19.10b0"
8+
# Cryptography 3.4+ requires Rust to build
9+
# https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst
10+
cryptography = "==3.3.2"
811
flake8 = "*"
912
lektor = "*"
1013
# Werkzeug added and pinned to mitigate this issue:

Pipfile.lock

+79-62
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

content/internships/applicant-guide/contents.lr

+1-1
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ before you share your document with them.
169169
If you are applying for Outreachy, please link to the project proposal document
170170
created using this template from your final Outreachy application.
171171

172-
[projecttemplate]: https://docs.google.com/document/d/18LWuA_iTSGSeRFtpVQdfOoz1G30ZgJg-_K0lNSQBYd0/)
172+
[projecttemplate]: https://docs.google.com/document/d/18LWuA_iTSGSeRFtpVQdfOoz1G30ZgJg-_K0lNSQBYd0/edit
173173

174174

175175
## Contacting Mentors

content/internships/contents.lr

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ Here are our mentors for 2021 GSoC:
5959

6060
| Name | Slack Username |
6161
| ---- | -------------- |
62-
| Abhishek Naidu | `@Abhishek` |
62+
| Abhishek Naidu | `@Abhishek Naidu` |
6363
| [Hugo Solar][authorhugo] | `@hugo` |
6464
| [Nimish Bongale][authornimish] | `@nimishnb` |
6565
| [Timid Robot Zehta][authortimidrobot] | `@Timid Robot` |
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
_model: project-idea
2+
---
3+
_hidden: yes
4+
---
5+
title: Add CC Chooser to CC WordPress Plugin
6+
---
7+
problem:
8+
Currently, we have a license selector on the admin panel that works fine but it
9+
can be improved by using the workflow of the new CC Chooser. We also have a set
10+
of Gutenberg blocks to insert a license in the content, we can also add a new
11+
block that can contain the CC Chooser workflow as well, this will improve the
12+
user experience and would be more educational regarding the CC Licenses.
13+
---
14+
expected_outcome:
15+
Revamping the admin panel of the plugin, adding the CC Chooser on it as well as
16+
a Gutenberg block.
17+
---
18+
internship_tasks:
19+
The intern will be expected to:
20+
- Research about how the new CC Chooser manage the user workflow
21+
- Recreate that process in the WordPress admin panel
22+
Generate a new Gutenberg block
23+
---
24+
application_tips:
25+
The intern should be able to plan this process and find the best way to adapt
26+
the workflow from the CC Chooser (JavaScript/Vue) to WordPress (PHP).
27+
---
28+
resources:
29+
- **[Applicant Guide][appguide]**
30+
- [New CC Chooser][betachooser]
31+
- [creativecommons/chooser][chooser]: [WIP] The new and improved CC license
32+
selection tool.
33+
- [creativecommons/wp-plugin-creativecommons][wpplugin]: Official Creative
34+
Commons plugin for licensing your content. With Creative Commons licenses,
35+
keep your copyright AND share your creativity.
36+
37+
[appguide]: /internships/applicant-guide/
38+
[betachooser]: https://chooser-beta.creativecommons.org/
39+
[chooser]: https://github.com/creativecommons/chooser
40+
[wpplugin]: https://github.com/creativecommons/wp-plugin-creativecommons/
41+
---
42+
skills_recommended:
43+
- JavaScript
44+
- PHP
45+
- React
46+
- WordPress
47+
---
48+
mentors:
49+
- Hugo
50+
---
51+
difficulty: Medium
52+
---
53+
filter_value: difficulty-medium skill-javascript skill-php skill-wordpress
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
_model: project-idea
2+
---
3+
_hidden: yes
4+
---
5+
title: Licenses Machine Readable Information
6+
---
7+
problem:
8+
The Creative Commons licenses consist of three layers: 1) Legal code, 2) Human
9+
readable deeds, 3) Machine readable (API and RDF). The new license
10+
infrastructure does not yet generate the third layer: machine readable data.
11+
---
12+
expected_outcome:
13+
Extend the new license infrastructure to generate machine readable licenses
14+
information. This project is an opportunity to empower applications,
15+
communities, and projects that wish to make the Creative Commons licenses
16+
available to their users.
17+
---
18+
internship_tasks:
19+
The intern will be expected to:
20+
- Comprehend legacy machine readable licenses information
21+
- Extend new license infrastructure to achieve parity with legacy
22+
infrastructure
23+
- Research current RDF specifications
24+
- Make recommendations for modernizing and improving machine readable licenses
25+
information (ex. updated RDF syntax, JSON API)
26+
- Create initial versions of the recommendations
27+
---
28+
application_tips:
29+
This project appears simple (ingest data and generate XML), but there are many
30+
many important details and strict requirements. I expect the project will
31+
broadly have three phases: 1) mimicry, 2) research, and 3) innovation.
32+
Applications should:
33+
- be detail oriented
34+
- value simplicity over cleverness
35+
---
36+
resources:
37+
- **[Applicant Guide][appguide]**
38+
- [About The Licenses - Creative Commons][aboutlicenses]
39+
- [Describing Copyright in RDF - Creative Commons Rights Expression
40+
Language][rdfns]
41+
- [api.creativecommons.org — CC API v documentation][api]
42+
- [creativecommons/cc-licenses][licenses]
43+
- [creativecommons/cc-licenses-data][licensesdata]
44+
45+
[appguide]: /internships/applicant-guide/
46+
[aboutlicenses]: https://creativecommons.org/licenses/
47+
[rdfns]: https://creativecommons.org/ns/
48+
[api]: https://api.creativecommons.org/docs/
49+
[licenses]: https://github.com/creativecommons/cc-licenses
50+
[licensesdata]: https://github.com/creativecommons/cc-licenses-data
51+
---
52+
skills_recommended:
53+
- Django
54+
- Jinja2
55+
- Python
56+
- XML
57+
- YAML
58+
---
59+
mentors:
60+
- Abhishek Naidu
61+
- Nimish Bongale
62+
- Zack Krida
63+
---
64+
difficulty: High
65+
---
66+
filter_value: difficulty-high skill-python
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
_model: project-idea
2+
---
3+
_hidden: yes
4+
---
5+
title: Vocabulary - Performance Improvements
6+
---
7+
problem:
8+
[Vocabulary][vocabulary] currently has some performance issues, related to:
9+
- File size of CSS files
10+
- Runtime loading cascade (importing Vocabulary from the CDN then loads
11+
additional stylesheets and font files in sequence, instead of in parallel).
12+
We need to eliminate this waterfall.
13+
14+
Performance can also be further improved via documentation, and sharing best
15+
practices for implementing vocabulary with consumers:
16+
- Guidelines and suggestions for using [purgecss][purgecss] with Vocabulary
17+
- Instructions on how/and what to prefetch or preload (with copy-pastable meta
18+
tags) (see: [Preload, prefetch and other link tags | CSS-Tricks][csstricks])
19+
- Create tooling so that these performance improvements can be maintained over
20+
time. Some ideas:
21+
- Filesize monitoring via GitHub actions: [ampproject/filesize][filesize]
22+
- Add linting rules for Sass files [sds/scss-lint][scsslint]
23+
24+
[vocabulary]: https://github.com/creativecommons/vocabulary/
25+
[purgecss]: https://github.com/FullHuman/purgecss
26+
[csstricks]: https://css-tricks.com/preload-prefetch-and-other-link-tags/
27+
[filesize]: https://github.com/ampproject/filesize
28+
[scsslint]: https://github.com/sds/scss-lint
29+
---
30+
expected_outcome:
31+
This work will have a strong and measurable impact on all sites using CC
32+
Vocabulary. The current live sites using vocabulary are:
33+
- https://chooser-beta.creativecommons.org/
34+
- https://opensource.creativecommons.org/
35+
- https://search.creativecommons.org/
36+
- https://summit.creativecommons.org/
37+
38+
We will be updating more CC websites to use Vocabulary in Q1 of this year.
39+
These changes will be quantifiable by measuring changes in page size (measured
40+
in kilobytes), and reduced load times on the Google-defined metrics "[core web
41+
vitals][corewebvitals]": Largest Contentful Paint (LCP), First Input Delay
42+
(FID), and Cumulative Layout Shift (CLS).
43+
44+
[corewebvitals]: https://web.dev/vitals/
45+
---
46+
internship_tasks:
47+
- Audit the current performance issues
48+
- Rewrite and modify CSS files and the build pipeline
49+
---
50+
application_tips:
51+
Applying interns should do some basic performance analysis of some existing CC
52+
web properties using Vocabulary. They should also outline how they intend to
53+
measure the results of their work, taking special care to capture as much
54+
relevant initial data and reporting *before* their changes are implemented as
55+
possible.
56+
57+
This project requires proficiency in CSS/Sass and optionally an understanding
58+
of front-end build tooling with NPM. Some JavaScript may likely be useful as
59+
well. This is a great opportunity for a developer to learn about front-end
60+
performance profiling, "modern" web performance metrics, and many native HTML
61+
APIs and specifications for dealing with asset loading.
62+
---
63+
resources:
64+
- **[Applicant Guide][appguide]**
65+
- [creativecommons/vocabulary][vocabulary]: A cohesive design system & Vue
66+
component library to unify the web-facing Creative Commons
67+
- [Web Vitals][webvitals]
68+
- [Best practices for measuring Web Vitals in the field][bestpractices]
69+
- [PurgeCSS - Remove unused CSS][purgecssdocs]
70+
- [how and why to avoid css @import statements in stylesheets on your
71+
websites - lost saloon][avoidimports]
72+
73+
[appguide]: /internships/applicant-guide/
74+
[vocabulary]: https://github.com/creativecommons/vocabulary/
75+
[webvitals]: https://web.dev/vitals/
76+
[bestpractices]: https://web.dev/vitals-field-measurement-best-practices/
77+
[purgecssdocs]: https://purgecss.com/
78+
[avoidimports]: https://www.lostsaloon.com/technology/how-to-avoid-css-import-statements-in-stylesheets-to-improve-seo/
79+
---
80+
skills_recommended:
81+
- CSS
82+
- CSS Preprocessors (Sass)
83+
- JavaScript (optional)
84+
---
85+
mentors:
86+
- Abhishek Naidu
87+
- Nimish Bongale
88+
- Zack Krida
89+
---
90+
difficulty: Medium
91+
---
92+
filter_value: difficulty-medium skill-css skill-javascript
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
_model: project-idea
2+
---
3+
_hidden: yes
4+
---
5+
title: Vocabulary - Remove dependency on Bulma
6+
---
7+
problem:
8+
[Vocabulary][vocabulary] is currently written on top of an existing CSS
9+
library, [Bulma][bulma]. There are a few problems with Bulma: naming
10+
inconsistencies that confuse developers; difficulty in overriding its existing
11+
classes; the large file size, and the more general maintenance burden of
12+
relying on a third party library as the base for our design system.
13+
14+
[vocabulary]: https://github.com/creativecommons/vocabulary/
15+
[bulma]: https://bulma.io/
16+
---
17+
expected_outcome:
18+
This work would have benefits to performance, and would need to be coordinated
19+
with the performance improvements project, but would also benefit the developer
20+
experience and ease of use for Vocabulary. Users will no longer need to jump
21+
between Bulma’s documentation and Vocabulary’s, and the entire codebase will be
22+
colocated and easier to navigate.
23+
---
24+
internship_tasks:
25+
The intern will need to assess existing web properties and figma designs to
26+
determine which CSS classes from Bulma need to be replicated and integrated
27+
into Vocabulary. This also means keeping track of what Bulma features can be
28+
ignored. Initially, any Bulma features we’re not using should be kept; they can
29+
either be re-implemented manually or their code can be copied directly into
30+
vocabulary. Later, once our vocabulary sites have migrated to the new version
31+
of Vocabulary without Bulma, we can look at deprecating and removing some of
32+
these features.
33+
34+
This intern will need to follow consistent naming conventions and CSS
35+
architectural style ([Block Element Modifier {BEM}][bem], utility classes,
36+
etc.) to ease the burden of this change for users.
37+
38+
Finally, the intern will need to document how to migrate to the version of
39+
Vocabulary that makes these changes live, with clear explanations of what code
40+
is deprecated, new, or modified.
41+
42+
[bem]: http://getbem.com/introduction/
43+
---
44+
application_tips:
45+
The intern should outline a plan to audit and access existing Vocabulary
46+
implementations and develop a plan to migrate away from Bulma.
47+
---
48+
resources:
49+
- **[Applicant Guide][appguide]**
50+
- [creativecommons/vocabulary][vocabulary]: A cohesive design system & Vue
51+
component library to unify the web-facing Creative Commons
52+
- [Vocabulary Storybook][storybook]
53+
- [Bulma][bulma]: Free, open source, and modern CSS framework based on Flexbox
54+
- [CSS Code Coverage Tool - Chrome DevTools - Dev Tips][csscoverage]
55+
56+
[appguide]: /internships/applicant-guide/
57+
[vocabulary]: https://github.com/creativecommons/vocabulary/
58+
[storybook]: https://cc-vocabulary.netlify.app/
59+
[bulma]: https://bulma.io/
60+
[csscoverage]: https://umaar.com/dev-tips/121-css-coverage/
61+
---
62+
skills_recommended:
63+
- CSS/Sass
64+
- JavaScript
65+
- NPM
66+
---
67+
mentors:
68+
- Abhishek Naidu
69+
- Nimish Bongale
70+
- Zack Krida
71+
---
72+
difficulty: High
73+
---
74+
filter_value: difficulty-high skill-css skill-javascript
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
_model: project-idea
2+
---
3+
_hidden: yes
4+
---
5+
title: WordPress - Remove Queulat dependency
6+
---
7+
problem:
8+
Queulat is a very good toolset to create forms, metaboxes, and custom post
9+
types but it lacks documentation and it could be a problem for the future. We
10+
may need to find an alternative to this.
11+
---
12+
expected_outcome:
13+
The project would consider a couple of alternatives to completely remove
14+
Queulat from the repos that are currently using it.
15+
---
16+
internship_tasks:
17+
The intern will be expected to:
18+
- Research about alternatives to this
19+
- Implement an alternatives in one of the WordPress theme repositories listed
20+
under Resources, below
21+
---
22+
application_tips:
23+
The intern is expected to outline a plan to remove this dependency as well as
24+
the research about the possible alternatives.
25+
---
26+
resources:
27+
- **[Applicant Guide][appguide]**
28+
- [felipelavinz/queulat][queulat]: Development toolkit for WordPress
29+
- [creativecommons/creativecommons-base][base]: Base WordPress theme for
30+
Creative Commons websites.
31+
- [creativecommons/creativecommons-certificate][certificate]: WordPress theme
32+
for the CC Certificate Website
33+
- [creativecommons/wp-theme-cc-chapter][chapter]: Creative Commons Chapter site
34+
theme (including chapter sites setup, taxonomies, and widget code)
35+
- [creativecommons/wp-theme-cc-commoners][commoners]
36+
- [creativecommons/wp-theme-summit][summit]
37+
38+
[appguide]: /internships/applicant-guide/
39+
[queulat]: https://github.com/felipelavinz/queulat
40+
[base]: https://github.com/creativecommons/creativecommons-base
41+
[certificate]: https://github.com/creativecommons/creativecommons-certificate
42+
[chapter]: https://github.com/creativecommons/wp-theme-cc-chapter
43+
[commoners]: https://github.com/creativecommons/wp-theme-cc-commoners
44+
[summit]: https://github.com/creativecommons/wp-theme-summit
45+
---
46+
skills_recommended:
47+
- PHP
48+
- WordPress
49+
---
50+
mentors:
51+
- Hugo
52+
---
53+
difficulty: High
54+
---
55+
filter_value: difficulty-high skill-php skill-wordpress

databags/repos.json

-16
Original file line numberDiff line numberDiff line change
@@ -610,22 +610,6 @@
610610
"url": "https://github.com/creativecommons/image-crawler",
611611
"website": null
612612
},
613-
{
614-
"created": "2014-12-08T20:16:04",
615-
"description": "(Deprecated) Tech Team blog",
616-
"engineering_project": true,
617-
"featured": false,
618-
"id": 27733017,
619-
"language": null,
620-
"license": {
621-
"name": "MIT License",
622-
"url": "https://github.com/creativecommons/labs/blob/master/LICENSE"
623-
},
624-
"name": "labs",
625-
"slack": "",
626-
"url": "https://github.com/creativecommons/labs",
627-
"website": ""
628-
},
629613
{
630614
"created": "2018-05-16T19:44:57",
631615
"description": "CC Legal Database: curated repository of Case Law and Scholarship data from around the world in a Django based website.",

0 commit comments

Comments
 (0)