Skip to content

Commit 5b7ba7d

Browse files
authored
Move alumni function to its own plugin (#426)
* Implement plugin * Fix CI * Fix broken link * Fix name * Complete translations * Update documentation
1 parent 2226d5a commit 5b7ba7d

File tree

38 files changed

+743
-454
lines changed

38 files changed

+743
-454
lines changed

.circleci/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ jobs:
3737
- yarn-packages-v1-
3838
- run:
3939
name: Install dependencies
40-
command: yarn install || true # Temporary until TS errors are fixed in docusaurus
40+
command: yarn install
4141
- save_cache:
4242
paths:
4343
- ~/.cache/yarn

.eslintignore

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# dependencies
2-
/node_modules
3-
/static/katex
2+
node_modules
43

54
# production
6-
/build
5+
build
6+
lib
77

88
# generated files
99
.docusaurus

.eslintrc.js

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ module.exports = {
55
},
66
extends: [
77
'airbnb',
8-
'prettier',
98
'plugin:react/recommended',
109
'plugin:@typescript-eslint/recommended',
1110
],
@@ -21,9 +20,8 @@ module.exports = {
2120
ecmaVersion: 2018,
2221
sourceType: 'module',
2322
},
24-
plugins: ['prettier', 'react', 'react-hooks', '@typescript-eslint'],
23+
plugins: ['react', 'react-hooks', '@typescript-eslint'],
2524
rules: {
26-
'prettier/prettier': 'error',
2725
// Allow JSX appearance in files with these extensions
2826
'react/jsx-filename-extension': [
2927
'error',
@@ -39,9 +37,17 @@ module.exports = {
3937
ignore: ['^@theme', '^@docusaurus'],
4038
},
4139
],
40+
'import/no-duplicates': 'off',
4241
// These are deemed unnecessary
4342
'react/jsx-one-expression-per-line': 'off',
4443
'import/extensions': 'off',
44+
'react/jsx-closing-bracket-location': [
45+
'error',
46+
{ nonEmpty: 'after-props', selfClosing: 'line-aligned' },
47+
],
48+
'react/jsx-props-no-spreading': 'off',
49+
// Conflicts with Prettier
50+
'object-curly-newline': 'off',
4551
},
4652
settings: {
4753
'import/resolver': {

.gitignore

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
# dependencies
2-
/node_modules
2+
node_modules
33

44
# production
5-
/build
5+
build
6+
lib
67

78
# generated files
89
.docusaurus

.prettierignore

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# dependencies
2-
/node_modules
3-
/static/katex
2+
node_modules
43

54
# production
6-
/build
5+
build
6+
lib
77

88
# generated files
99
.docusaurus

.prettierrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
"printWidth": 80,
33
"tabWidth": 2,
44
"useTabs": false,
5+
"trailingComma": "all",
56
"semi": true,
67
"singleQuote": true,
78
"jsxBracketSameLine": true

README.md

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,14 @@ You may want to read the [Docusaurus v2 documentation](https://docusaurus.io/) b
6161
.
6262
├── .circleci
6363
# Configuration file for Continuous Integration & Testing
64-
├── .dependabot
65-
# Configuration file for auto-bumping dependencies
6664
├── .github
6765
# GitHub workflows to run checks on commit / pull request
6866
├── .husky
6967
# The pre-commit hook script run by husky; used for linting
68+
├── .yarn
69+
# The vendored version of yarn (berry)
70+
├── alumni
71+
# The alumni data file, used by our own docusaurus-plugin-alumni
7072
├── blog
7173
# Markdown files for blog contents
7274
# Refer to https://docusaurus.io/docs/blog#adding-posts for help
@@ -79,19 +81,36 @@ You may want to read the [Docusaurus v2 documentation](https://docusaurus.io/) b
7981
│ │ # Internationalization support
8082
│ └── en
8183
│ │ # All data needed for the English translation
84+
│ ├── docusaurus-plugin-alumni
85+
│ │ # The translated alumni data file
8286
│ ├── docusaurus-plugin-content-blog
83-
│ │ # All blog pages translated in English; for best tracking, the directory structure should be the same as /blog/
87+
│ │ # All blog pages translated in English; for maintenance purposes, the directory structure should be the same as /blog/
8488
│ ├── docusaurus-plugin-content-docs
85-
│ │ # All docs pages translated in English; for best tracking, the directory structure should be the same as /docs/
89+
│ │ # All docs pages translated in English; for maintenance purposes, the directory structure should be the same as /docs/
8690
│ └── docusaurus-theme-classic
87-
# Json files providing translation to the navbar and footer
91+
# JSON files providing translation to the navbar and footer
8892
├── node_modules
8993
# Stores the dependency files installed by `yarn`
9094
# Required for testing & deploying
95+
├── plugins
96+
│ └── docusaurus-plugin-alumni
97+
│ │ # Our custom plugin that renders the alumni data to the /alumni route
98+
│ ├── lib
99+
│ │ # Compiler output after running `yarn build`
100+
│ └── src
101+
│ │ # Source code of the plugin
102+
│ └── theme
103+
│ ├── AlumniPage
104+
│ │ # The root component (page layout) used at the /alumni route
105+
│ ├── AlumniTimeline
106+
| | # The main component to render the alumni timeline
107+
│ ├── MemberCard
108+
| | # Each alumni's card
109+
│ ├── Members
110+
| | # The series of cards within each "class of"
111+
│ └── icons
112+
| # SVG icons, e.g. LinkedIn, website
91113
├── src
92-
│ │ # All pages except those in docs or blog goes here
93-
│ ├── components
94-
│ │ # React components that are reused
95114
│ ├── css
96115
│ │ # Global CSS files for theming
97116
│ │ # (though most of the CSS are written at the component-level)

alumni/alumni.yml

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
# This file keeps track of all alumni listed in the alumni page.
2+
#
3+
# It is used strictly for building the alumni network for WFLA Computerization Club
4+
# and has received consent for publishing these information on our website.
5+
#
6+
# However, we do appreciate if you ask for consent from these people
7+
# first, before re-using their personal information elsewhere.
8+
9+
- classOf: 2020
10+
members:
11+
- name: 舒烨
12+
image: https://avatars3.githubusercontent.com/u/49149993
13+
bio: Williams College '24, Interested in information security, network, and Linux kernel
14+
links:
15+
website: https://blog.shuye.dev/
16+
github: https://github.com/yechs
17+
linkedin: https://www.linkedin.com/in/yechs/
18+
favoredLink: github
19+
- classOf: 2019
20+
members:
21+
- name: 仲宇辰
22+
image: /img/alumni/Yuchen_Zhong.jpg
23+
bio: ex-OIer / UTSG Math+CS 23'
24+
links:
25+
website: https://davidzyc.github.io/
26+
github: https://github.com/davidzyc
27+
favoredLink: github
28+
- name: 甘佳旻
29+
image: /img/alumni/Jimmy_Gan.jpg
30+
bio: |
31+
Rochester 2023 | Intended ECE & CS double major | Currently working on Hardware Security, Side-channel Attack
32+
links:
33+
email: mailto:jimmygan1012@gmail.com
34+
favoredLink: email
35+
- classOf: 2018
36+
members:
37+
- name: 杨雨笛
38+
image: /img/alumni/Yudi_Yang.jpg
39+
bio: UR MATH+CS 22'
40+
links:
41+
github: https://github.com/2000jedi
42+
favoredLink: github
43+
- name: 顾贝妮
44+
image: /img/alumni/Rachel_Gu.png
45+
bio: |
46+
UPenn Engineering '2022, Digital Media Design, Interest: Computer Graphics, Interactive Technologies, CG generalist
47+
links:
48+
email: mailto:gubeini@seas.upenn.edu
49+
favoredLink: email
50+
- name: 张扬
51+
image: /img/alumni/Eric_Zhang.jpg
52+
bio: NYU, Math & CS double major
53+
links:
54+
email: mailto:yz4801@nyu.edu
55+
favoredLink: email
56+
- classOf: 2017
57+
members:
58+
- name: 周天祎
59+
image: https://avatars3.githubusercontent.com/u/4290500
60+
bio: Facebook SWE Intern | Cornell Engineering '21
61+
links:
62+
website: https://developersam.com
63+
github: https://github.com/SamChou19815
64+
linkedin: https://www.linkedin.com/in/sam-zhou-30b91610b/
65+
favoredLink: website
66+
- name: 张秦子
67+
image: /img/alumni/Qinzi_Zhang.jpg
68+
bio: |
69+
Boston College, Math (+CS Phys minor) | Interest: Applied Math, Analysis; Distributed System, Machine Learning
70+
links:
71+
email: mailto:zhangbcu@bc.edu
72+
favoredLink: email
73+
- name: Sam Hu
74+
bio: Brandeis / CoSi & Math Major
75+
links:
76+
email: mailto:huruiyangsam@gmail.com
77+
favoredLink: email
78+
- name: Tim Zhu H.Maru
79+
image: /img/alumni/Tim_Zhu.jpg
80+
bio: |
81+
Psychology / Philosophy | Interest: Positive Psychology; Self-help (and its discontents); Piano Performing and Arrangement
82+
links:
83+
email: mailto:hmaru8088@gmail.com
84+
favoredLink: email
85+
- classOf: 2016
86+
members:
87+
- name: 杜佳梦
88+
image: /img/alumni/Jiameng_Du.jpg
89+
bio: CMU ECE+CS Class of 2020
90+
links:
91+
linkedin: https://www.linkedin.com/in/jiameng-lily-du/
92+
favoredLink: linkedin
93+
- name: 昂国昊
94+
image: /img/alumni/Guohao_Ang.jpg
95+
bio: UCB CS+Applied Math Class of 2020 / Googler
96+
links:
97+
linkedin: https://www.linkedin.com/in/guohao-ang-b35a32118/
98+
favoredLink: linkedin
99+
- name: 杨霁初
100+
image: /img/alumni/Jichu_Yang.jpg
101+
bio: Duke 2020'
102+
links:
103+
website: https://benjester.github.io/
104+
favoredLink: website

docs/activities.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,4 @@ license: Creative Commons Attribution 4.0 International License
1616

1717
我们还承办各类学校内的社团信息化工作,比如我们曾为 Techomedia 联合主办的[THE Hack 创客马拉松 ](https://thehack.org.cn)提供技术支持,主要工作为负责各类功能性网站的编写,比如选手报名平台、[选手提问平台](https://github.com/hackinit/helpq)[硬件预约/追踪平台](https://github.com/hackinit/cog)等等。
1818

19-
目前正处于 [Enspire](enspire/what-is-enspire) 平台的开发初期,我们也不定时地会从学生会或者校内老师那里获得一些新功能需求,这个时候可能会短期内进行比较高强度的开发。
19+
目前正处于 [Enspire](./enspire/what-is-enspire.md) 平台的开发初期,我们也不定时地会从学生会或者校内老师那里获得一些新功能需求,这个时候可能会短期内进行比较高强度的开发。

docusaurus.config.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ module.exports = {
2424
},
2525
},
2626
},
27+
plugins: ['docusaurus-plugin-alumni'],
2728
themeConfig: {
2829
navbar: {
2930
title: '世外信息化社',

0 commit comments

Comments
 (0)