Porovnat revize
18 Commity
643be5020e
...
8dd5e6ef6b
Autor | SHA1 | Datum |
---|---|---|
tree | 8dd5e6ef6b | |
tree | b1345408fc | |
tree | cb01d28f1f | |
tree | 3090cdae6d | |
tree | d004edf460 | |
tree | 85d95bb94e | |
tree | e817ed5f8f | |
tree | 2730418324 | |
tree | 6f2648d38f | |
tree | cac452c5f9 | |
tree | d89afacc0d | |
tree | ab92f1193e | |
tree | f443aa1596 | |
tree | 007ed0f66f | |
tree | 49c9099c7f | |
tree | c51a1f0a36 | |
tree | 055750f3b7 | |
tree | 390768c477 |
35
README.md
35
README.md
|
@ -25,26 +25,33 @@ research and community of [Web3Privacy Now](https://web3privacy.info).
|
|||
|
||||
- **Summit** (w3ps) - a day-long gathering (or longer)
|
||||
- **Meetup** (w3pm) - shorter gatherings for a few hours
|
||||
- **Hackathon** (w3ph) - a multi-day event including lectures, workshops and hacking
|
||||
|
||||
## List of events
|
||||
|
||||
(in chronologic order)
|
||||
|
||||
### Summits
|
||||
| type | # id | date | location | 👥 | coincidence | dri | links |
|
||||
| --- | --- | --- | --- | --- | --- | --- | --- |
|
||||
| summit | `s1` | **2023-06-05** | 🇨🇿 Prague | 180 | [PBW](https://prgblockweek.com/)+[ETHPrague](https://ethprague.com/) | Tree | [web](https://prague.web3privacy.info/), [git](https://github.com/web3privacy/w3ps1) |
|
||||
| meetup | `rom1` | **2023-10-05** | 🇮🇹 Rome | 139 | [ETHRome](https://ethrome.org/) | PG | [web](https://lu.ma/web3privacynow_rome) |
|
||||
| meetup | `prg1` | **2023-11-14** | 🇨🇿 Prague | - | [DCxPrague](https://dcxprague.org/) | Tree | [web](https://lu.ma/w3pm-prg1) |
|
||||
| meetup | `ist1` | 2023/Nov | 🇹🇷 Istanbul | - | [Devconnect IST](https://devconnect.org/) | - | |
|
||||
| meetup | `bcn1` | 2024/Q1 | 🇪🇸 Barcelona | - | | Tree | |
|
||||
| meetup | `lib1` | 2024/Mar | 🇨🇿 Liberec | - | [ETHBohemia](https://ethbohemia.ethevents.club/) | Tree | |
|
||||
| meetup | `ams1` | 2024/May | 🇳🇱 Amsterdam | - | [ETHDam 2024](https://www.ethdam.com/) | - | |
|
||||
| meetup | `ber1` | 2024/May | 🇩🇪 Berlin | - | ETHBerlin 5 | Tree | |
|
||||
| summit | `s2` | 2024/Jun | 🇨🇿 Prague | - | ETHPrague 2024 | Tree | |
|
||||
| hackathon | `h1` | 2024/Jun | 🇸🇮 Bled | - | | Tree | |
|
||||
| meetup | `lju1` | 2024/Jun | 🇸🇮 Ljubljana | - | W3PN Hackathon | Tree | |
|
||||
| meetup | `bcn2` | 2024/Jul | 🇪🇸 Barcelona | - | ETHBarcelona (?) | - | |
|
||||
| meetup | `bru1` | 2024/Jul | 🇧🇪 Brussels | - | [EthCC 7](https://www.ethcc.io/) | - | |
|
||||
| meetup | `waw1` | 2024/Sep | 🇵🇱 Warsaw | - | ETHWarsaw (?) | Tree | |
|
||||
| meetup | `rom2` | 2024/Oct | 🇮🇹 Rome | - | ETHRome 2024 | - | |
|
||||
| summit | `s3` | 2024/Nov | 🇨🇿 Brno | - | ETHBrno 2024 | Tree | |
|
||||
| meetup | `dvc1` | 2024/Q4 | 🏴☠️ SE Asia | - | [Devcon 7](https://devcon.org/) | - | |
|
||||
|
||||
| # id | date | location | 👥 | coincidence | dri | links |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
| #1 → `w3ps1` | **2023-06-05** | 🇨🇿 Prague | 180 | [PBW](https://prgblockweek.com/) w/ [ETHPrague](https://ethprague.com/) | Tree | [web](https://prague.web3privacy.info/), [git](https://github.com/web3privacy/w3ps1) |
|
||||
|
||||
### Meetups
|
||||
|
||||
| # id | date | location | 👥 | coincidence | dri | links |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
| `rom-1` | **2023-10-05** | 🇮🇹 Rome | 139 | [ETHRome](https://ethrome.org/) | PG | [web](https://lu.ma/web3privacynow_rome) |
|
||||
| `prg-1` | **2023-11-14** | 🇨🇿 Prague | - | [DCxPrague](https://dcxprague.org/) | Tree | [web](https://lu.ma/w3pm-prg1) |
|
||||
| `ist-1` | 2023/Nov | 🇹🇷 Istanbul | - | [Devconnect Istanbul](https://devconnect.org/) | - | |
|
||||
| `ams-1` | 2024/May | 🇳🇱 Amsterdam | - | [ETHDam 2024](https://www.ethdam.com/) | - | |
|
||||
| `ber-1` | 2024/May | 🇩🇪 Berlin | - | ETHBerlin 5 | - | |
|
||||
[Source file](./events/events.yaml)
|
||||
|
||||
## Events maintaners
|
||||
|
||||
|
|
|
@ -18,26 +18,19 @@ research and community of [Web3Privacy Now](https://web3privacy.info).
|
|||
|
||||
- **Summit** (w3ps) - a day-long gathering (or longer)
|
||||
- **Meetup** (w3pm) - shorter gatherings for a few hours
|
||||
- **Hackathon** (w3ph) - a multi-day event including lectures, workshops and hacking
|
||||
|
||||
## List of events
|
||||
|
||||
(in chronologic order)
|
||||
|
||||
### Summits
|
||||
|
||||
| # id | date | location | 👥 | coincidence | dri | links |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
<% it.events.summits.forEach(function(event, i){ %>
|
||||
| #<%= i+1%> → `<%= event.id %>` | <%= event.date.match(/^\d{4}-\d{2}-\d{2}$/) ? `**${event.date}**` : event.date %> | <%= it.getFlagEmoji(event.country) %> <%= event.city %> | <%= event.visitors || '-' %> | <%= event.coincidence %> | <%= event.lead || "-" %> | <%= (event.links && Object.keys(event.links).map(k => `[${k}](${event.links[k]})`).join(", ")) || "" %> |
|
||||
| type | # id | date | location | 👥 | coincidence | dri | links |
|
||||
| --- | --- | --- | --- | --- | --- | --- | --- |
|
||||
<% it.events.forEach(function(event, i){ %>
|
||||
| <%= event.type %> | `<%= event.id.replace("w3pm-", "").replace(/^w3p/, '') %>` | <%= event.date.match(/^\d{4}-\d{2}-\d{2}$/) ? `**${event.date}**` : event.date %> | <%= it.getFlagEmoji(event.country) %> <%= event.city %> | <%= event.visitors || '-' %> | <%= event.coincidence %> | <%= event.lead || "-" %> | <%= (event.links && Object.keys(event.links).map(k => `[${k}](${event.links[k]})`).join(", ")) || "" %> |
|
||||
<% }) %>
|
||||
|
||||
### Meetups
|
||||
|
||||
| # id | date | location | 👥 | coincidence | dri | links |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
<% it.events.meetups.forEach(function(event, i){ %>
|
||||
| <% if (event.links?.git) { %>[`<%= event.id %>`](<%= event.links.git %>)<% } else { %>`<%= event.id.replace('w3pm-','') %>`<% } %> | <%= event.date.match(/^\d{4}-\d{2}-\d{2}$/) ? `**${event.date}**` : event.date %> | <%= it.getFlagEmoji(event.country) %> <%= event.city %> | <%= event.visitors || '-' %> | <%= event.coincidence %> | <%= event.lead || "-" %> | <%= (event.links && Object.keys(event.links).map(k => `[${k}](${event.links[k]})`).join(", ")) || "" %> |
|
||||
<% }) %>
|
||||
[Source file](./events/events.yaml)
|
||||
|
||||
## Events maintaners
|
||||
|
||||
|
|
|
@ -0,0 +1,140 @@
|
|||
- id: w3ps1
|
||||
type: summit
|
||||
date: "2023-06-05"
|
||||
city: Prague
|
||||
country: cz
|
||||
coincidence: "[PBW](https://prgblockweek.com/)+[ETHPrague](https://ethprague.com/)"
|
||||
lead: Tree
|
||||
visitors: 180
|
||||
links:
|
||||
web: https://prague.web3privacy.info/
|
||||
git: https://github.com/web3privacy/w3ps1
|
||||
|
||||
- id: w3pm-rom1
|
||||
type: meetup
|
||||
date: "2023-10-05"
|
||||
city: Rome
|
||||
country: it
|
||||
coincidence: "[ETHRome](https://ethrome.org/)"
|
||||
lead: PG
|
||||
visitors: 139
|
||||
links:
|
||||
web: https://lu.ma/web3privacynow_rome
|
||||
|
||||
- id: w3pm-prg1
|
||||
type: meetup
|
||||
date: "2023-11-14"
|
||||
city: Prague
|
||||
country: cz
|
||||
coincidence: "[DCxPrague](https://dcxprague.org/)"
|
||||
lead: Tree
|
||||
links:
|
||||
web: https://lu.ma/w3pm-prg1
|
||||
|
||||
- id: w3pm-ist1
|
||||
type: meetup
|
||||
date: "2023/Nov"
|
||||
city: Istanbul
|
||||
country: tr
|
||||
coincidence: "[Devconnect IST](https://devconnect.org/)"
|
||||
|
||||
- id: w3pm-bcn1
|
||||
type: meetup
|
||||
date: "2024/Q1"
|
||||
city: Barcelona
|
||||
country: es
|
||||
coincidence: ""
|
||||
lead: Tree
|
||||
|
||||
- id: w3pm-lib1
|
||||
type: meetup
|
||||
date: "2024/Mar"
|
||||
city: Liberec
|
||||
country: cz
|
||||
coincidence: "[ETHBohemia](https://ethbohemia.ethevents.club/)"
|
||||
lead: Tree
|
||||
|
||||
- id: w3pm-ams1
|
||||
type: meetup
|
||||
date: "2024/May"
|
||||
city: Amsterdam
|
||||
country: nl
|
||||
# ETHDam 2024 - May 10-12 2024
|
||||
coincidence: "[ETHDam 2024](https://www.ethdam.com/)"
|
||||
|
||||
- id: w3pm-ber1
|
||||
type: meetup
|
||||
date: "2024/May"
|
||||
city: Berlin
|
||||
country: de
|
||||
# ETHBerlin 5 - May 24-26, 2024
|
||||
coincidence: "ETHBerlin 5"
|
||||
lead: Tree
|
||||
|
||||
- id: w3ps2
|
||||
type: summit
|
||||
date: "2024/Jun"
|
||||
city: Prague
|
||||
country: cz
|
||||
coincidence: "ETHPrague 2024"
|
||||
lead: Tree
|
||||
|
||||
- id: w3ph1
|
||||
type: hackathon
|
||||
date: "2024/Jun"
|
||||
city: Bled
|
||||
country: si
|
||||
coincidence: ""
|
||||
lead: Tree
|
||||
|
||||
- id: w3pm-lju1
|
||||
type: meetup
|
||||
date: "2024/Jun"
|
||||
city: Ljubljana
|
||||
country: si
|
||||
coincidence: "W3PN Hackathon"
|
||||
lead: Tree
|
||||
|
||||
- id: w3pm-bcn2
|
||||
type: meetup
|
||||
date: "2024/Jul"
|
||||
city: Barcelona
|
||||
country: es
|
||||
coincidence: "ETHBarcelona (?)"
|
||||
|
||||
- id: w3pm-bru1
|
||||
type: meetup
|
||||
date: "2024/Jul"
|
||||
city: Brussels
|
||||
country: be
|
||||
coincidence: "[EthCC 7](https://www.ethcc.io/)"
|
||||
|
||||
- id: w3pm-waw1
|
||||
type: meetup
|
||||
date: "2024/Sep"
|
||||
city: Warsaw
|
||||
country: pl
|
||||
coincidence: "ETHWarsaw (?)"
|
||||
lead: Tree
|
||||
|
||||
- id: w3pm-rom2
|
||||
type: meetup
|
||||
date: "2024/Oct"
|
||||
city: Rome
|
||||
country: it
|
||||
coincidence: "ETHRome 2024"
|
||||
|
||||
- id: w3ps3
|
||||
type: summit
|
||||
date: "2024/Nov"
|
||||
city: Brno
|
||||
country: cz
|
||||
coincidence: "ETHBrno 2024"
|
||||
lead: Tree
|
||||
|
||||
- id: w3pm-dvc1
|
||||
type: meetup
|
||||
date: "2024/Q4"
|
||||
city: SE Asia
|
||||
country: xx
|
||||
coincidence: "[Devcon 7](https://devcon.org/)"
|
|
@ -1,38 +0,0 @@
|
|||
- id: w3pm-rom-1
|
||||
date: "2023-10-05"
|
||||
city: Rome
|
||||
country: it
|
||||
coincidence: "[ETHRome](https://ethrome.org/)"
|
||||
lead: PG
|
||||
visitors: 139
|
||||
links:
|
||||
web: https://lu.ma/web3privacynow_rome
|
||||
|
||||
- id: w3pm-prg-1
|
||||
date: "2023-11-14"
|
||||
city: Prague
|
||||
country: cz
|
||||
coincidence: "[DCxPrague](https://dcxprague.org/)"
|
||||
lead: Tree
|
||||
links:
|
||||
web: https://lu.ma/w3pm-prg1
|
||||
|
||||
- id: w3pm-ist-1
|
||||
date: "2023/Nov"
|
||||
city: Istanbul
|
||||
country: tr
|
||||
coincidence: "[Devconnect Istanbul](https://devconnect.org/)"
|
||||
|
||||
- id: w3pm-ams-1
|
||||
date: "2024/May"
|
||||
city: Amsterdam
|
||||
country: nl
|
||||
# ETHDam 2024 - May 10-12 2024
|
||||
coincidence: "[ETHDam 2024](https://www.ethdam.com/)"
|
||||
|
||||
- id: w3pm-ber-1
|
||||
date: "2024/May"
|
||||
city: Berlin
|
||||
country: de
|
||||
# ETHBerlin 5 - May 24-26, 2024
|
||||
coincidence: "ETHBerlin 5"
|
|
@ -1,10 +0,0 @@
|
|||
- id: w3ps1
|
||||
date: "2023-06-05"
|
||||
city: Prague
|
||||
country: cz
|
||||
coincidence: "[PBW](https://prgblockweek.com/) w/ [ETHPrague](https://ethprague.com/)"
|
||||
lead: Tree
|
||||
visitors: 180
|
||||
links:
|
||||
web: https://prague.web3privacy.info/
|
||||
git: https://github.com/web3privacy/w3ps1
|
28
index.js
28
index.js
|
@ -4,13 +4,12 @@ import { load as yamlLoad } from "https://deno.land/x/js_yaml_port@3.14.0/js-yam
|
|||
import { emptyDir } from "https://deno.land/std@0.173.0/fs/mod.ts";
|
||||
import { Eta } from "https://deno.land/x/eta@v3.0.3/src/index.ts"
|
||||
|
||||
const types = ["summits", "meetups"];
|
||||
|
||||
async function _loadYaml(fn) {
|
||||
return yamlLoad(await Deno.readTextFile(fn));
|
||||
}
|
||||
|
||||
function getFlagEmoji(countryCode) {
|
||||
if (countryCode === 'xx') return "🏴☠️";
|
||||
const codePoints = countryCode
|
||||
.toUpperCase()
|
||||
.split('')
|
||||
|
@ -24,25 +23,28 @@ async function test() {
|
|||
const schema = await _loadYaml("./schema.yaml");
|
||||
const validator = ajv.compile(schema);
|
||||
|
||||
for (const type of types) {
|
||||
Deno.test(`Check schema: ${type}`, async () => {
|
||||
const list = await _loadYaml(`./events/${type}.yaml`);
|
||||
if (!validator(list)) {
|
||||
const list = await _loadYaml(`./events/events.yaml`);
|
||||
const ids = [];
|
||||
|
||||
for (const item of list) {
|
||||
Deno.test(`${item.id}`, async () => {
|
||||
if (!validator(item)) {
|
||||
throw validator.errors;
|
||||
}
|
||||
if (ids.includes(item.id)) {
|
||||
throw `ID exists: ${item.id}`
|
||||
}
|
||||
|
||||
ids.push(item.id)
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
async function build() {
|
||||
const output = {};
|
||||
for (const type of types) {
|
||||
const list = await _loadYaml(`./events/${type}.yaml`);
|
||||
output[type] = list;
|
||||
}
|
||||
const list = await _loadYaml(`./events/events.yaml`);
|
||||
await emptyDir("./dist");
|
||||
const fn = "./dist/index.json";
|
||||
await Deno.writeTextFile(fn, JSON.stringify(output, null, 2));
|
||||
await Deno.writeTextFile(fn, JSON.stringify(list, null, 2));
|
||||
console.log(`File saved: `, fn);
|
||||
|
||||
const readmeFn = "./README.md"
|
||||
|
@ -55,7 +57,7 @@ EDIT "./README.tpl.eta" INSTEAD
|
|||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
-->`
|
||||
|
||||
await Deno.writeTextFile(readmeFn, warning + "\n\n" + eta.render("./README.tpl.eta", { events: output, getFlagEmoji }))
|
||||
await Deno.writeTextFile(readmeFn, warning + "\n\n" + eta.render("./README.tpl.eta", { events: list, getFlagEmoji }))
|
||||
console.log(`File saved: `, readmeFn);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
type: array
|
||||
items: { "$ref": "#/$defs/event" }
|
||||
$ref: "#/$defs/event"
|
||||
$defs:
|
||||
event:
|
||||
type: object
|
||||
|
@ -12,6 +11,12 @@ $defs:
|
|||
properties:
|
||||
id:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
enum:
|
||||
- summit
|
||||
- meetup
|
||||
- hackathon
|
||||
date:
|
||||
type: string
|
||||
city:
|
||||
|
|
Načítá se…
Odkázat v novém úkolu