Skip to content

Commit ee8d35d

Browse files
tmattioasaadmahmoodMirzaBabarBaigcuihtlauacsabine
committed
Add governance section
Co-authored-by: Asaad Mahmood <asaadmahmood@users.noreply.github.com> Co-authored-by: MirzaBabarBaig <mirza.babar35@gmail.com> Co-authored-by: Cuihtlauac Alvarado <cuihtlauac@tarides.com> Co-authored-by: Sabine Schmaltz <sabineschmaltz@gmail.com> Co-authored-by: Thibaut Mattio <thibaut.mattio@gmail.com> Co-authored-by: Christine Rose <christinerose@users.noreply.github.com> Co-authored-by: Riku Silvola <riku@tarides.com>
1 parent 5b50fbf commit ee8d35d

File tree

18 files changed

+943
-5
lines changed

18 files changed

+943
-5
lines changed

data/governance.yml

Lines changed: 477 additions & 0 deletions
Large diffs are not rendered by default.

src/global/url.ml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,11 @@ let blog_post source v = "/blog/" ^ source ^ "/" ^ v
5959
let news = "/news"
6060
let news_post v = "/news/" ^ v
6161
let jobs = "/jobs"
62+
let governance = "/governance"
63+
let governance_team id = "/governance/" ^ id
6264
let carbon_footprint = "/policies/carbon-footprint"
6365
let privacy_policy = "/policies/privacy-policy"
64-
let governance = "/policies/governance"
66+
let governance_policy = "/policies/governance"
6567
let code_of_conduct = "/policies/code-of-conduct"
6668
let playground = "/play"
6769
let papers = "/papers"

src/ocamlorg_data/data.ml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,3 +180,10 @@ module Event = struct
180180

181181
let get_by_slug slug = List.find_opt (fun x -> String.equal slug x.slug) all
182182
end
183+
184+
module Governance = struct
185+
include Governance
186+
187+
let get_by_id id =
188+
List.find_opt (fun x -> String.equal id x.id) (teams @ working_groups)
189+
end

src/ocamlorg_data/data.mli

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -461,3 +461,36 @@ module Event : sig
461461
val all : t list
462462
val get_by_slug : string -> t option
463463
end
464+
465+
module Governance : sig
466+
module Member : sig
467+
type t = { name : string; github : string; role : string }
468+
469+
val compare : t -> t -> int
470+
end
471+
472+
type contact_kind = GitHub | Email | Discord | Chat
473+
type contact = { name : string; link : string; kind : contact_kind }
474+
475+
type dev_meeting = {
476+
date : string;
477+
time : string;
478+
link : string;
479+
calendar : string option;
480+
notes : string;
481+
}
482+
483+
type team = {
484+
id : string;
485+
name : string;
486+
description : string;
487+
contacts : contact list;
488+
dev_meeting : dev_meeting option;
489+
members : Member.t list;
490+
subteams : team list;
491+
}
492+
493+
val teams : team list
494+
val working_groups : team list
495+
val get_by_id : string -> team option
496+
end

src/ocamlorg_data/dune

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,15 @@
2424
(run %{dep:../../tool/ood-gen/bin/gen.exe} book))))
2525

2626
(rule
27+
(deps ../../tool/ood-gen/bin/gen.exe)
28+
(target governance.ml)
29+
(action
30+
(with-stdout-to
31+
%{target}
32+
(run %{dep:../../tool/ood-gen/bin/gen.exe} governance))))
33+
34+
(rule
35+
(deps ../../tool/ood-gen/bin/gen.exe)
2736
(target changelog.ml)
2837
(action
2938
(with-stdout-to

src/ocamlorg_frontend/components/icons.eml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,11 @@ let changelog class_ =
4141
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z" />
4242
</svg>
4343

44+
let chat class_ =
45+
<svg xmlns="http://www.w3.org/2000/svg" class="<%s class_ %>" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" aria-hidden="true">
46+
<path stroke-linecap="round" stroke-linejoin="round" d="M20.25 8.511c.884.284 1.5 1.128 1.5 2.097v4.286c0 1.136-.847 2.1-1.98 2.193-.34.027-.68.052-1.02.072v3.091l-3-3c-1.354 0-2.694-.055-4.02-.163a2.115 2.115 0 01-.825-.242m9.345-8.334a2.126 2.126 0 00-.476-.095 48.64 48.64 0 00-8.048 0c-1.131.094-1.976 1.057-1.976 2.192v4.286c0 .837.46 1.58 1.155 1.951m9.345-8.334V6.637c0-1.621-1.152-3.026-2.76-3.235A48.455 48.455 0 0011.25 3c-2.115 0-4.198.137-6.24.402-1.608.209-2.76 1.614-2.76 3.235v6.226c0 1.621 1.152 3.026 2.76 3.235.577.075 1.157.14 1.74.194V21l4.155-4.155" />
47+
</svg>
48+
4449
let chevron_down class_ =
4550
<svg xmlns="http://www.w3.org/2000/svg" class="<%s class_ %>" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true">
4651
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7" />
@@ -117,6 +122,11 @@ let edit class_ =
117122
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z" />
118123
</svg>
119124

125+
let email class_ =
126+
<svg xmlns="http://www.w3.org/2000/svg" class="<%s class_ %>" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true">
127+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21.75 6.75v10.5a2.25 2.25 0 01-2.25 2.25h-15a2.25 2.25 0 01-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0019.5 4.5h-15a2.25 2.25 0 00-2.25 2.25m19.5 0v.243a2.25 2.25 0 01-1.07 1.916l-7.5 4.615a2.25 2.25 0 01-2.36 0L3.32 8.91a2.25 2.25 0 01-1.07-1.916V6.75" />
128+
</svg>
129+
120130
let error class_ =
121131
<svg xmlns="http://www.w3.org/2000/svg" class="<%s class_ %>" fill="currentColor" viewBox="0 0 24 24" width="24px" aria-hidden="true">
122132
<path d="M0 0h24v24H0V0z" fill="none"/>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
.governance-contrast-section {
2+
background: linear-gradient(270deg, #0B1528 0%, rgba(11, 21, 40, 0.958333) 53.65%, #0B1528 100%);
3+
}
4+
5+
.governance-contrast-section button {
6+
border: 1px solid #fff;
7+
color: #fff;
8+
opacity: 0.6;
9+
}
10+
11+
.governance-contrast-section .gradient {
12+
background: -webkit-linear-gradient(left, #EFA4F2,#0076ff, #62A8FF);
13+
-webkit-background-clip: text;
14+
-webkit-text-fill-color: transparent;
15+
}

src/ocamlorg_frontend/css/styles.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
@import "./partials/shadows.css";
1313
@import "./partials/tags.css";
1414
@import "./partials/typography.css";
15+
@import "./partials/governance.css";
1516

1617
@import "./other/syntax.css";
1718

src/ocamlorg_frontend/dune

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,18 @@
174174
(action
175175
(run %{bin:dream_eml} %{dep:release.eml} --workspace %{workspace_root})))
176176
(rule
177-
(target releases.ml)
177+
(targets governance.ml)
178+
(deps governance.eml)
179+
(action
180+
(run %{bin:dream_eml} %{deps} --workspace %{workspace_root})))
181+
(rule
182+
(targets governance_team.ml)
183+
(deps governance_team.eml)
184+
(action
185+
(run %{bin:dream_eml} %{deps} --workspace %{workspace_root})))
186+
(rule
187+
(targets releases.ml)
188+
(deps releases.eml)
178189
(action
179190
(run %{bin:dream_eml} %{dep:releases.eml} --workspace %{workspace_root})))
180191
(rule

src/ocamlorg_frontend/ocamlorg_frontend.ml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,5 @@ let success_story = Success_story.render
3939
let tutorial = Tutorial.render
4040
let workshop = Workshop.render
4141
let outreachy = Outreachy.render
42+
let governance ~teams = Governance.render ~teams
43+
let governance_team team = Governance_team.render team

0 commit comments

Comments
 (0)