Council V2
ci/woodpecker/push/woodpecker Pipeline failed Podrobnosti

This commit is contained in:
tree 2022-12-09 14:22:22 +01:00
rodič cc0cdf44e3
revize b731670d75
11 změnil soubory, kde provedl 309 přidání a 43 odebrání

binární
bun.lockb

Binární soubor nebyl zobrazen.

Zobrazit soubor

@ -30,7 +30,7 @@ Ke komunitě se může přidat každý, a to hned na několika [komunikačních
Pokud se chcete zapojit více aktivněji, můžete nám pomoci s organizací [našich událostí](/udalosti), nebo pomoci s rozvojem komunitních [projektů a služeb](/projekty) - případně nás [podpořit finančně](podporte-nas/financni-podpora).
Každá komunita musí být alespoň v omezené míře spravována - u nás k tomu slouží [Council](council), který je aktuálně složený z 16-ti ethereum pozitivních lidí.
Každá komunita musí být alespoň v omezené míře spravována - u nás k tomu slouží [Council](council), který je aktuálně složený ze 4 ethereum pozitivních lidí.
:::tip Co to znamená "gwei"?
`Gwei` znamená "giga-wei", tedy milion "wei". `Wei` je [nejmenší monetární jednotka Etheru](https://ethereum.org/en/developers/docs/intro-to-ether/#denominations) (ETH). Je pojmenovaná po čínském kryptografovi [Wei Dai](https://en.wikipedia.org/wiki/Wei_Dai), který přispěl zásadní měrou ke vzniku kryptoměn.

Zobrazit soubor

@ -4,7 +4,9 @@ description: Rada starších
# Council
Nejaktivnější členové naší komunity, kteří společně komunitu řídí, směrují a vystupují za ní navenek.
Aktivní členové naší komunity, kteří společně komunitu řídí, směrují a vystupují za ní navenek.
Členové councilu se rekrutují z [Working Group](../working-group) podle svého dlouhodobého přínosu komunitě.
```mdx-code-block
import DocCardList from '@theme/DocCardList';
@ -16,8 +18,18 @@ import DocCardList from '@theme/DocCardList';
* Řízení a směrování komunity
* Vystupování za komunitu navenek
* Moderace [komunikačních kanálů](../komunikacni-kanaly/)
* Rozvíjení [nástrojů a dokumentace](../nastroje/)
* Správa [pokladny](pokladna.md) 🔑
* Stanovení výše měsíčního budgetu pro [Working Group](../working-group)
* Organizace [Governance Callů](/komunita/governance-call/)
## Síla hlasu
Každý člen councilu má sílu hlasu odpovídající poměru získaných GIVE bodů za posledních 12 epoch ve [Working Group](../working-group).
## Noví členové
Do councilu mohou vstoupit lidé, kteří za posledních 12 epoch ve [Working Group](../working-group) získali více než 2.5% z celkově rozdaných GIVE bodů.
## Zánik členství
Členství automaticky zaniká, pokud člen získal za posledních 12 epoch ve [Working Group](../working-group) méně než 2.5% z celkově rozdaných GIVE bodů.

Zobrazit soubor

@ -1,22 +1,30 @@
# Členové councilu
Celkem členů: **16**
Celkem členů: **4**
## Aktuální členové
| Fórum | Matrix | Discord |
| ------------------------------------------------------ | ----------------------- | -------------------- |
| [@AdamCrypto](https://forum.gwei.cz/u/adamcrypto) | | AdamB#7066 |
| [@Ajworry](https://forum.gwei.cz/u/ajworry) | | Ajworry#5844 |
| [@Bohus](https://forum.gwei.cz/u/bohus) | | bohus.eth#5311 |
| [@coinmandeer](https://forum.gwei.cz/u/coinmandeer) 🔑 | [@coinmandeer:gwei.cz](https://matrix.to/#/@coinmandeer:gwei.cz) | coinmandeer#9287 |
| [@cryptomar1o](https://forum.gwei.cz/u/cryptomar1o) | | cryptomario#0917 |
| [@damsky](https://forum.gwei.cz/u/damsky) | [@damsky:matrix.org](https://matrix.to/#/@damsky:matrix.org) | damsky#0879 |
| [@KryptoVlada](https://forum.gwei.cz/u/kryptovlada) | | KryptoVláďa.eth#5246 |
| [@Mich](https://forum.gwei.cz/u/mich) | | Mich#3164 |
| [@m0xt](https://forum.gwei.cz/u/m0xt) 🔑 | | m0xt#0024 |
| [@kleinpetr](https://forum.gwei.cz/u/kleinpetr) | | kleinpetr#2938 |
| [@Peky](https://forum.gwei.cz/u/peky) | | Peky#8276 |
| [@petoun1](https://forum.gwei.cz/u/petoun1) | | Petr.eth#2951 |
| [@radek](https://forum.gwei.cz/u/radek) | [@radek.svarz:matrix.org](https://matrix.to/#/@radek.svarz:matrix.org) | radek#8947 |
| [@rixcian](https://forum.gwei.cz/u/rixcian) 🔑 | | rixcian#4383 |
| [@tree](https://forum.gwei.cz/u/tree) 🔑 | [@tree:gwei.cz](https://matrix.to/#/@tree:gwei.cz) | tree#7466 |
| [@vojtch](https://forum.gwei.cz/u/vojtch) 🔑 | [@vojtch:matrix.org](https://matrix.to/#/@vojtch:matrix.org) | Vojtch#6780 |
## Bývalí členové
| Fórum | Matrix | Discord | Členem do |
| ------------------------------------------------------ | ----------------------- | -------------------- | --- |
| [@AdamCrypto](https://forum.gwei.cz/u/adamcrypto) | | AdamB#7066 | 8.12.2022 |
| [@Ajworry](https://forum.gwei.cz/u/ajworry) | | Ajworry#5844 | 8.12.2022 |
| [@Bohus](https://forum.gwei.cz/u/bohus) | | bohus.eth#5311 | 8.12.2022 |
| [@cryptomar1o](https://forum.gwei.cz/u/cryptomar1o) | | cryptomario#0917 | 8.12.2022 |
| [@damsky](https://forum.gwei.cz/u/damsky) | [@damsky:matrix.org](https://matrix.to/#/@damsky:matrix.org) | damsky#0879 | 8.12.2022 |
| [@KryptoVlada](https://forum.gwei.cz/u/kryptovlada) | | KryptoVláďa.eth#5246 | 8.12.2022 |
| [@Mich](https://forum.gwei.cz/u/mich) | | Mich#3164 | 8.12.2022 |
| [@m0xt](https://forum.gwei.cz/u/m0xt) 🔑 | | m0xt#0024 | 8.12.2022 |
| [@kleinpetr](https://forum.gwei.cz/u/kleinpetr) | | kleinpetr#2938 | 8.12.2022 |
| [@Peky](https://forum.gwei.cz/u/peky) | | Peky#8276 | 8.12.2022 |
| [@petoun1](https://forum.gwei.cz/u/petoun1) | | Petr.eth#2951 | 8.12.2022 |
| [@rixcian](https://forum.gwei.cz/u/rixcian) 🔑 | | rixcian#4383 | 8.12.2022 |

54
komunita/working-group.md Normal file
Zobrazit soubor

@ -0,0 +1,54 @@
# Working Group
Nejaktivní členové naší komunity, kteří přinášejí hodnotu tím, že něco reálně tvoří nebo spravují.
Working Group nemá žádné rozhodovací pravomoce (kromě sebe-hodnocení viz níže), ale dlouhodobě aktivní členové se můžou stát členy [Councilu](./council).
## Srovnání [Council](./council/) × Working Group
| | Council | Working Group |
| ---: | --- | --- |
| **Náplň** | Rozhodování | Práce |
| **Motivace** | Vnitřní | Vnitřní + Finanční |
| **Benefit** | Prestiž | Možnost povýšení |
| **Síla hlasu** | Odpovídající přínosu | Odpovídající přínosu |
| **Posouzení** | 12 epoch | 3 epochy |
| **Vznik členství** | >2.5% / 12 epoch | otevřené, nutný souhlas WG |
| **Přechodné období<br/>pro nové členy** | není | 3 epochy nemohou rozdávat GIVE |
| **Zánik členství** | <2.5% / 12 epoch | <2.5% / 3 epochy |
## Úkoly Working Group
* Práce na [našich událostech](/udalosti/) nebo [projektech či službách](/projekty/)
* Moderace [komunikačních kanálů](../komunikacni-kanaly/)
* Rozvíjení [nástrojů a dokumentace](/komunita/nastroje/)
## Epochy
Veškerá práce a její hodnocení probíhá po tzv. epochách. V našem případě je epocha přesně 30 dní (1 měsíc).
## Hodnocení přínosu
Přínos každého člena Working Group si rozhodují společným konsensem všichni členové, pomocí nástroje [Coordinape](https://coordinape.com/). Tento konsenzuální výsledek potom slouží jako základ pro získání finančního ohodnocení (viz níže), případně pro členství v Councilu.
V rámci každé epochy má každý člen možnost prezentovat svoje příspěvky (contributions) a případně rozdat body za přínos ostatním. Každou epochu má každý k dispozici 100 GIVE bodů, které může rozdat podle svého uvážení lidem, kteří podle něj mají největší přínos.
- [Gwei.cz Working Group @ Coordinape](https://app.coordinape.com/circles/4139)
## Finanční motivace
Členové Working Group získávají za svoji práci finanční ohodnocení, a to každou epochu, podle poměru získaných GIVE bodů (viz. "Hodnocení přínosu" výše).
V současné době se členům přerozděluje $500 měsíčně.
Příklad: Pepa získal 100 GIVE bodů z celkově rozdaných 1000 GIVE bodů (tj. 10%). To znamená že dostane $50 (10%).
## Noví členové
Členem Working Group se může stát kdokoliv, kdo pro komunitu něco hodnotného tvoří nebo spravuje (pokud s tím aktuální členové nemají problém).
Pro nové členy platí 3-měsíční přechodné období, během níž můžou GIVE body získávat, ale nikoliv rozdávat.
## Zánik členství
Členství ve Working Group automaticky zaniká, pokud člen získal za poslední 3 epochy méně než 2.5% z celkově rozdaných GIVE bodů.

Zobrazit soubor

@ -19,6 +19,7 @@
"@easyops-cn/docusaurus-search-local": "^0.32.0",
"@mdx-js/react": "^1.6.22",
"clsx": "^1.2.1",
"date-fns": "^2.29.3",
"prism-react-renderer": "^1.3.5",
"react": "^17.0.2",
"react-dom": "^17.0.2"

Zobrazit soubor

@ -45,6 +45,7 @@ const sidebars = {
'council/clenove',
],
},
'working-group',
{
type: 'category',
label: 'Governance Call',

Zobrazit soubor

@ -1,33 +1,55 @@
import React from 'react';
import { useState, useEffect } from 'react'
import { format } from 'date-fns'
import { cs } from 'date-fns/locale'
export default function Event({ name, description, web, venue }) {
return <div class="container" style={{marginTop: '1em'}}>
<div class="row">
<div class="col col--1" style={{ display: 'flex', alignItems: 'center', justifyContent: 'center', textAlign: 'center'}}>
<div>
<div style={{margin: 'auto', fontSize: '1.8em'}}>13.</div>
<div style={{fontSize: '0.8em'}}>listopad</div>
<div style={{fontSize: '1em'}}>10:00</div>
const cats = [
{
id: 31,
title: 'Meetup',
color: '#CFFDE1'
},
{
id: 43,
title: 'Online meetup',
color: '#FCF9BE'
}
]
export default function Event({ event }) {
if (!event) {
return null
}
const e = event
const start = new Date(e.start)
const url = "https://forum.gwei.cz/t/" + e.slug + "/" + e.id
let cat = cats.find(c => c.id === e.category_id)
if (!cat) {
cat = {
id: 0,
title: 'n/a',
color: 'gray'
}
}
return <div key={e.id} class="gwei-event">
<div class="date-header">
<div class="date">{format(start, 'dd.')}</div>
<div class="month">{format(start, 'MMMM', { locale: cs })}</div>
<div class="day">{format(start, 'EEEE', { locale: cs })}</div>
</div>
<div class="event-body">
<div class="event-title"><a href={url}>{e.title}</a></div>
<div class="event-subtitle">
<div class="subtitle event-time">{format(start, 'HH:mm', { locale: cs })}</div>
<div class="subtitle event-category" style={{backgroundColor:cat.color}}>{cat.title}</div>
{/*<div class="subtitle event-place">XXX</div>*/}
</div>
</div>
<div class="col col--11">
<div class="card">
<div class="card__header">
<h3>{name}</h3>
{e.image_url ?
<div class="event-image">
<a href={url}><img src={e.image_url}/></a>
</div>
<div class="card__body">
<p>
{description}
</p>
</div>
<div class="card__footer">
<p style={{fontSize: '1em'}}>
Čas: 10:00 - 17:00 | Místo: <strong>{venue}</strong> | Web: <a href="{web}">{web.replace(/^https?:\/\//, '')}</a>
</p>
</div>
</div>
</div>
</div>
</div>
: null}
</div>
}

Zobrazit soubor

@ -0,0 +1,68 @@
import React from 'react';
import { useState, useEffect } from 'react'
import { format } from 'date-fns'
import { cs } from 'date-fns/locale'
import Event from '@site/src/components/Event';
async function transformFeed (data) {
const events = data.topic_list.topics
.filter(topic => {
const compareTo = topic.event.end || topic.event.start
return Number(new Date(compareTo)) > (new Date() - 1000*60*60*24)
})
.map(t => {
return {
id: t.id,
title: t.title,
start: t.event.start,
slug: t.slug,
image_url: t.image_url,
excerpt: t.excerpt,
category_id: t.category_id,
}
})
const months = []
for (const e of events) {
const month = format(new Date(e.start), 'yyyy-MM')
const mitem = months.find(m => m.key === month)
if (mitem) {
mitem.items.push(e)
} else {
months.push({
key: month,
title: format(new Date(e.start), 'LLLL yyyy', { locale: cs }),
items: [e]
})
}
}
return months
}
export default function EventList() {
const [data, setData] = useState(null)
useEffect(() => {
const fetchData = () => {
fetch('https://forum.gwei.cz/calendar.json')
.then((result) => result.json())
.then((xdata) => transformFeed(xdata))
.then((xdata) => setData(xdata))
}
fetchData()
}, [])
if (data) {
//return <pre><code>{JSON.stringify(data, null, 2)}</code></pre>
return <div style={{marginBottom: '1.5em'}}>
{data.map(month => (
<div key={month.key}>
<h3 style={{textTransform: 'capitalize'}}>{month.title}</h3>
{month.items.map(event => (
<Event event={event} key={event.id} />
))}
</div>
))}
</div>
}
return <div>Načítám události ..</div>
}

Zobrazit soubor

@ -31,4 +31,94 @@ img.inline-image {
margin-left: 0.5em;
height: 1.3em;
vertical-align: -0.3em;
}
.gwei-event {
margin-bottom: 0.75em;
border: 1px solid #e5e5e5;
border-radius: 0.5em;
display: flex;
overflow: hidden;
flex-wrap: nowrap;
background-color: #f3f3f3;
}
.gwei-event .date-header {
padding: 0.7em;
border-right: 1px solid #e5e5e5;
}
.gwei-event .date-header .date {
font-size: 1.5rem;
line-height: 1.5rem;
text-align: center;
}
.gwei-event .date-header .month {
font-size: 0.8em;
font-weight: bold;
text-align: center;
}
.gwei-event .date-header .day {
font-size: 0.8em;
text-align: center;
}
.gwei-event .event-body {
flex-grow: 1;
padding: 0.7em 1em;
}
.gwei-event .event-title {
font-size: 1.2rem;
line-height: 1.2rem;
font-weight: bold;
margin-bottom: 0.3em;
}
.gwei-event .event-subtitle {
display: flex;
gap: 1rem;
}
.gwei-event .event-subtitle .subtitle {
font-size: 0.9em;
}
.gwei-event .event-time::before, .gwei-event .event-place::before {
display: inline-block;
content: "";
margin-right: 0.3em;
vertical-align: -0.0em;
opacity: 0.6;
background-repeat: no-repeat;
}
.gwei-event .event-time::before {
width: 0.8em;
height: 0.8em;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3C!--! Font Awesome Pro 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --%3E%3Cpath d='M256 512C114.6 512 0 397.4 0 256S114.6 0 256 0S512 114.6 512 256s-114.6 256-256 256zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z'/%3E%3C/svg%3E");
}
.gwei-event .event-place::before {
width: 0.6em;
height: 0.8em;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3C!--! Font Awesome Pro 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --%3E%3Cpath d='M384 192c0 87.4-117 243-168.3 307.2c-12.3 15.3-35.1 15.3-47.4 0C117 435 0 279.4 0 192C0 86 86 0 192 0S384 86 384 192z'/%3E%3C/svg%3E");
}
.gwei-event .event-subtitle .subtitle.event-category {
display: inline-block;
font-size: 0.8em;
border-radius: 0.5em;
padding: 0.1em 0.5em;
}
.gwei-event .event-image {
flex-shrink: 0;
justify-content: flex-end;
height: 7em;
}
.gwei-event .event-image img {
max-height: 100%;
}

Zobrazit soubor

@ -6,6 +6,16 @@ Rádi vás na jakékoliv naší akcí uvidíme, naše akce jsou otevřené pro v
## Nadcházející akce
```mdx-code-block
import EventList from '@site/src/components/EventList';
import Event from '@site/src/components/Event';
<Event name="ETHBrno²" timeStart="2022-11-11T13:00" timeEnd="2022-11-13T19:00" description="Hackathon zaměřený na soukromí a bezpečnost." web="https://ethbrno.cz" venue="Impact Hub + ClubCo, Brno" />
<EventList />
```
Seznam všech událostí naleznete na našem fóru v [sekci Kalendář](https://forum.gwei.cz/calendar).
## Koncepty