From 8d4b9a83447e8bb2556cacc0f7d6f3c5b1a8befd Mon Sep 17 00:00:00 2001 From: tree Date: Wed, 11 Oct 2023 22:01:00 +0200 Subject: [PATCH] update --- README.md | 26 ++++++------------ README.tpl.eta | 67 +++++++++++++++++++++++++++++++++++++++++++++ events/meetups.yaml | 24 ++-------------- events/summits.yaml | 10 +------ index.js | 17 +++++++++++- 5 files changed, 94 insertions(+), 50 deletions(-) create mode 100644 README.tpl.eta diff --git a/README.md b/README.md index 547e200..a06d32d 100644 --- a/README.md +++ b/README.md @@ -26,27 +26,17 @@ Calendar with all events and links: ### Summits -| # id | date | location | 👥 | coincidence | dri | -| ---------------------------------------------------------------------------------------- | ------------ | -------------- | --- | ----------------------------------------------------------------------- | ---- | -| [#1](https://prague.web3privacy.info/) → [`w3ps1`](https://github.com/web3privacy/w3ps1) | 2023-06-05 | 🇨🇿 Prague | 300 | [PBW](https://prgblockweek.com/) w/ [ETHPrague](https://ethprague.com/) | Tree | -| #2 → `w3ps2` | 2023-11-02 | 🇨🇿 Brno | 250 | [ETHBrno×3](https://ethbrno.cz/) | Tree | -| TBD | _2024/Q1_ | _🇪🇸 Barcelona_ | | | Tree | -| TBD | _2024-06-??_ | _🇨🇿 Prague_ | | [PBW](https://prgblockweek.com/) | Tree | -| TBD | _2024/Q3_ | _🇺🇦 Kyiv_ | | [Kyiv Tech Summit](https://www.kyivtechsummit.com/) (?) | | -| TBD | _2024/Q4_ | _🇨🇿 Brno_ | | [ETHBrno IV](https://ethbrno.cz/) | | +| # id | date | location | 👥 | coincidence | dri | +| --- | --- | --- | --- | --- | --- | +| [#1](https://prague.web3privacy.info/) → [`w3ps1`](https://github.com/web3privacy/w3ps1) | 2023-06-05 | 🇨🇿 Prague | 180 | [PBW](https://prgblockweek.com/) w/ [ETHPrague](https://ethprague.com/) | Tree | ### Meetups -| # id | date | location | 👥 | coincidence | dri | -| ------- | ------------ | -------------- | -- | ----------------------------------------------------------------------------- | ---- | -| `bcn-1` | 2023-07-?? | 🇪🇸 Barcelona | 50 | | Tree | -| `par-1` | 2023-07-?? | 🇫🇷 Paris | | [EthCC 6](https://www.ethcc.io/) | ? | -| `waw-1` | 2023-08-?? | 🇵🇱 Warsaw | | [ETHwarsaw](https://www.ethwarsaw.dev/) | Tree | -| `ber-1` | _2023-09-??_ | _🇩🇪 Berlin_ | | [BBW](https://ethrome.org/) w/ [Protocol Berg](https://protocol.berlin/) | Tree | -| `rom-1` | _2023-10-??_ | _🇮🇹 Rome_ | | [ETHRome](https://ethrome.org/) | PG | -| `ist-1` | _2023-11-??_ | _🇹🇷 Istanbul_ | | [Devconnect Istanbul](https://devconnect.org/) | Tree | -| `ams-1` | _2024/Q2_ | _🇳🇱 Amsterdam_ | | [ETHDam 2024](https://www.ethdam.com/) | | -| `ber-2` | _2024-05-??_ | _🇩🇪 Berlin_ | | [BBW](https://blockchainweek.berlin/) w/ [ETHBerlin5](https://ethberlin.ooo/) | | +| # id | date | location | 👥 | coincidence | dri | +| --- | --- | --- --- | --- | --- | +| [#1](https://lu.ma/web3privacynow_rome) → `w3pm-rom-1` | 2023-10-05 | 🇮🇹 Rome | - | [ETHRome](https://ethrome.org/) | PG | +| #2 → `w3pm-ist-1` | 2023-11-?? | 🇹🇷 Istanbul | - | [Devconnect Istanbul](https://devconnect.org/) | TBD | +| #3 → `w3pm-ams-1` | 2024/Q2 | 🇳🇱 Amsterdam | - | [ETHDam 2024](https://www.ethdam.com/) | TBD | ## Events maintaners diff --git a/README.tpl.eta b/README.tpl.eta new file mode 100644 index 0000000..1fadac3 --- /dev/null +++ b/README.tpl.eta @@ -0,0 +1,67 @@ +``` + ____ ____ ____ ____ +||W |||3 |||P |||E || +||__|||__|||__|||__|| +|/__\|/__\|/__\|/__\| +``` + +# Web3Privacy Events (w3pe) + +The _Web3Privacy Events_ is a regular gatherings of the people interested in +privacy in the Web3 industry. This initiative was created to complement the +research and community of [Web3Privacy Now](https://web3privacy.info). + +Calendar with all events and links: + +- [lu.ma/web3privacy](https://lu.ma/web3privacy) + +## Concepts + +- **Summit** (w3ps) - a day-long gathering (or longer) +- **Meetup** (w3pm) - shorter gatherings for a few hours + +## List of events + +(in chronologic order) + +### Summits + +| # id | date | location | 👥 | coincidence | dri | +| --- | --- | --- | --- | --- | --- | +<% it.events.summits.forEach(function(event, i){ %> +| <% if (event.links?.web) { %>[#<%= i+1 %>](<%= event.links.web %>)<% } else { %>#<%= i+1%><% } %> → <% if (event.links?.git) { %>[`<%= event.id %>`](<%= event.links.git %>)<% } else { %>`<%= event.id %>`<% } %> | <%= event.date %> | <%= it.getFlagEmoji(event.country) %> <%= event.city %> | <%= event.visitors || '-' %> | <%= event.coincidence %> | <%= event.lead %> | +<% }) %> + +### Meetups + +| # id | date | location | 👥 | coincidence | dri | +| --- | --- | --- --- | --- | --- | +<% it.events.meetups.forEach(function(event, i){ %> +| <% if (event.links?.web) { %>[#<%= i+1 %>](<%= event.links.web %>)<% } else { %>#<%= i+1%><% } %> → <% if (event.links?.git) { %>[`<%= event.id %>`](<%= event.links.git %>)<% } else { %>`<%= event.id %>`<% } %> | <%= event.date %> | <%= it.getFlagEmoji(event.country) %> <%= event.city %> | <%= event.visitors || '-' %> | <%= event.coincidence %> | <%= event.lead %> | +<% }) %> + +## Events maintaners + +- Tree ([@burningtree](https://github.com/burningtree)) +- PG ([@EclecticSamurai](https://github.com/EclecticSamurai)) + +## About Web3Privacy Now + +Web3privacy now is a research project aimed at building a culture of privacy +industry in web3: the most extensive database of privacy-enhancing solutions, +the framework for PEDApps ideation, use-cases database & many more. + +- Website: [web3privacy.info](http://web3privacy.info/) + +### Follow us + +- Twitter: [@web3privacy](http://twitter.com/web3privacy) +- Bluesky: + [@web3privacy.info](https://staging.bsky.app/profile/web3privacy.info) +- Events: [lu.ma/web3privacy](https://lu.ma/web3privacy) + +### Join our community + +- Matrix (space): + [#web3privacy:gwei.cz](https://matrix.to/#/#web3privacy:gwei.cz) +- Signal (chat): [chat.web3privacy.info](https://chat.web3privacy.info/) diff --git a/events/meetups.yaml b/events/meetups.yaml index 9f13941..cf27496 100644 --- a/events/meetups.yaml +++ b/events/meetups.yaml @@ -1,31 +1,11 @@ -- id: w3pm-bcn-1 - date: "2023-07-??" - city: Barcelona - country: es - coincidence: "[ETHBarcelona](https://ethbarcelona.com/)" - lead: TBD - visitors: 50 - -- id: w3pm-waw-1 - date: "2023-08-??" - city: Warsaw - country: pl - coincidence: "[ETHwarsaw](https://www.ethwarsaw.dev/)" - lead: Tree - -- id: w3pm-ber-1 - date: "2023-09-??" - city: Berlin - country: de - coincidence: "[BBW](https://ethrome.org/) w/ [Protocol Berg](https://protocol.berlin/)" - lead: TBD - - id: w3pm-rom-1 date: "2023-10-05" city: Rome country: it coincidence: "[ETHRome](https://ethrome.org/)" lead: PG + links: + web: https://lu.ma/web3privacynow_rome - id: w3pm-ist-1 date: "2023-11-??" diff --git a/events/summits.yaml b/events/summits.yaml index 314130f..f3fc55b 100644 --- a/events/summits.yaml +++ b/events/summits.yaml @@ -7,12 +7,4 @@ visitors: 180 links: web: https://prague.web3privacy.info/ - git: https://github.com/web3privacy/w3ps1 - -- id: w3ps2 - date: "2023-11-02" - city: Brno - country: cz - coincidence: "[ETHBrno×3](https://ethbrno.cz/)" - lead: Tree - visitors: 250 \ No newline at end of file + git: https://github.com/web3privacy/w3ps1 \ No newline at end of file diff --git a/index.js b/index.js index de58d80..801ef7a 100644 --- a/index.js +++ b/index.js @@ -2,6 +2,7 @@ import Ajv from "npm:ajv@8.8.2"; import addFormats from "npm:ajv-formats@2.1.1"; import { load as yamlLoad } from "https://deno.land/x/js_yaml_port@3.14.0/js-yaml.js"; 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"]; @@ -9,6 +10,14 @@ async function _loadYaml(fn) { return yamlLoad(await Deno.readTextFile(fn)); } +function getFlagEmoji(countryCode) { + const codePoints = countryCode + .toUpperCase() + .split('') + .map(char => 127397 + char.charCodeAt()); + return String.fromCodePoint(...codePoints); +} + async function test() { const ajv = new Ajv({ strict: false }); addFormats(ajv); @@ -34,7 +43,13 @@ async function build() { await emptyDir("./dist"); const fn = "./dist/index.json"; await Deno.writeTextFile(fn, JSON.stringify(output, null, 2)); - console.log(`File saved: `); + console.log(`File saved: `, fn); + + const readmeFn = "./README.md" + const eta = new Eta({ views: "./" }) + console.log(output) + await Deno.writeTextFile(readmeFn, eta.render("./README.tpl.eta", { events: output, getFlagEmoji })) + console.log(`File saved: `, readmeFn); } switch (Deno.args[0] || "test") {