svelte alpha
|
@ -0,0 +1,13 @@
|
|||
.DS_Store
|
||||
node_modules
|
||||
/build
|
||||
/.svelte-kit
|
||||
/package
|
||||
.env
|
||||
.env.*
|
||||
!.env.example
|
||||
|
||||
# Ignore files for PNPM, NPM and YARN
|
||||
pnpm-lock.yaml
|
||||
package-lock.json
|
||||
yarn.lock
|
|
@ -0,0 +1,15 @@
|
|||
module.exports = {
|
||||
root: true,
|
||||
extends: ['eslint:recommended', 'prettier'],
|
||||
plugins: ['svelte3'],
|
||||
overrides: [{ files: ['*.svelte'], processor: 'svelte3/svelte3' }],
|
||||
parserOptions: {
|
||||
sourceType: 'module',
|
||||
ecmaVersion: 2020
|
||||
},
|
||||
env: {
|
||||
browser: true,
|
||||
es2017: true,
|
||||
node: true
|
||||
}
|
||||
};
|
|
@ -0,0 +1,8 @@
|
|||
.DS_Store
|
||||
node_modules
|
||||
/build
|
||||
/.svelte-kit
|
||||
/package
|
||||
.env
|
||||
.env.*
|
||||
!.env.example
|
|
@ -0,0 +1 @@
|
|||
engine-strict=true
|
|
@ -0,0 +1,13 @@
|
|||
.DS_Store
|
||||
node_modules
|
||||
/build
|
||||
/.svelte-kit
|
||||
/package
|
||||
.env
|
||||
.env.*
|
||||
!.env.example
|
||||
|
||||
# Ignore files for PNPM, NPM and YARN
|
||||
pnpm-lock.yaml
|
||||
package-lock.json
|
||||
yarn.lock
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"useTabs": true,
|
||||
"singleQuote": true,
|
||||
"trailingComma": "none",
|
||||
"printWidth": 100,
|
||||
"plugins": ["prettier-plugin-svelte"],
|
||||
"pluginSearchDirs": ["."],
|
||||
"overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }]
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
# create-svelte
|
||||
|
||||
Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
|
||||
|
||||
## Creating a project
|
||||
|
||||
If you're seeing this, you've probably already done this step. Congrats!
|
||||
|
||||
```bash
|
||||
# create a new project in the current directory
|
||||
npm create svelte@latest
|
||||
|
||||
# create a new project in my-app
|
||||
npm create svelte@latest my-app
|
||||
```
|
||||
|
||||
## Developing
|
||||
|
||||
Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:
|
||||
|
||||
```bash
|
||||
npm run dev
|
||||
|
||||
# or start the server and open the app in a new browser tab
|
||||
npm run dev -- --open
|
||||
```
|
||||
|
||||
## Building
|
||||
|
||||
To create a production version of your app:
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
You can preview the production build with `npm run preview`.
|
||||
|
||||
> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.
|
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
"name": "eb2-website",
|
||||
"version": "0.0.1",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "vite dev",
|
||||
"build": "vite build",
|
||||
"preview": "vite preview",
|
||||
"test": "playwright test",
|
||||
"lint": "prettier --plugin-search-dir . --check . && eslint .",
|
||||
"format": "prettier --plugin-search-dir . --write ."
|
||||
},
|
||||
"devDependencies": {
|
||||
"@playwright/test": "^1.25.0",
|
||||
"@sveltejs/adapter-auto": "next",
|
||||
"@sveltejs/kit": "next",
|
||||
"autoprefixer": "^10.4.12",
|
||||
"eslint": "^8.16.0",
|
||||
"eslint-config-prettier": "^8.3.0",
|
||||
"eslint-plugin-svelte3": "^4.0.0",
|
||||
"postcss": "^8.4.17",
|
||||
"prettier": "^2.6.2",
|
||||
"prettier-plugin-svelte": "^2.7.0",
|
||||
"svelte": "^3.44.0",
|
||||
"svelte-preprocess": "^4.10.7",
|
||||
"tailwindcss": "^3.1.8",
|
||||
"vite": "^3.1.0"
|
||||
},
|
||||
"type": "module"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
/** @type {import('@playwright/test').PlaywrightTestConfig} */
|
||||
const config = {
|
||||
webServer: {
|
||||
command: 'npm run build && npm run preview',
|
||||
port: 4173
|
||||
}
|
||||
};
|
||||
|
||||
export default config;
|
|
@ -0,0 +1,6 @@
|
|||
module.exports = {
|
||||
plugins: {
|
||||
tailwindcss: {},
|
||||
autoprefixer: {},
|
||||
},
|
||||
}
|
|
@ -0,0 +1,653 @@
|
|||
{
|
||||
"id": "ethbrno2",
|
||||
"name": "ETHBrno",
|
||||
"shortname": "ETHBrno",
|
||||
"description": "ETHBrno² is an annual independent & open community hackathon",
|
||||
"dates": [
|
||||
"2022-11-11",
|
||||
"2022-11-13"
|
||||
],
|
||||
"places": ["Impact Hub Brno", "Clubco Brno"],
|
||||
"country": "Czech Republic",
|
||||
"links": {
|
||||
"web": "https://ethbrno.cz",
|
||||
"docs": "https://docs.ethbrno.cz/",
|
||||
"twitter": "https://twitter.com/ethbrno",
|
||||
"telegram": "https://t.me/ethbrno",
|
||||
"matrix": "https://matrix.to/#/#ethbrno:gwei.cz"
|
||||
},
|
||||
"schemaVersion": 1,
|
||||
"spec": {
|
||||
"speakers": [
|
||||
{
|
||||
"id": "rachel-rose",
|
||||
"name": "Rachel-Rose O'Leary",
|
||||
"remote": false,
|
||||
"twitter": "lunar_mining",
|
||||
"linkedin": null,
|
||||
"bio": "DarkFi core dev, writer",
|
||||
"orgs": "[DarkFi](https://dark.fi/)",
|
||||
"web": {
|
||||
"name": "DarkFi",
|
||||
"url": "https://dark.fi/"
|
||||
},
|
||||
"tracks": [
|
||||
"lunarpunk",
|
||||
"privacy"
|
||||
],
|
||||
"country": "us",
|
||||
"desc": "Rachel-Rose O'Leary is a software developer working in anonymity, systems development and cryptography. She was lead tech writer for CoinDesk 2017-2018, covering privacy tech and ethereum. She has a background in digital art and philosophy, and has been writing about crypto since 2015.",
|
||||
"photos": [
|
||||
"web:jpg"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "vorotnikov",
|
||||
"name": "Artem Vorotnikov",
|
||||
"remote":true,
|
||||
"twitter": "vorot93",
|
||||
"linkedin": null,
|
||||
"bio": "Ethereum Core Developer, creator of Akula",
|
||||
"orgs": "[Akula](https://akula.app/)",
|
||||
"web": {
|
||||
"name": "Akula",
|
||||
"url": "https://akula.app/"
|
||||
},
|
||||
"tracks": [
|
||||
"eth2"
|
||||
],
|
||||
"country": "us",
|
||||
"desc": "Rachel-Rose O'Leary is a software developer working in anonymity, systems development and cryptography. She was lead tech writer for CoinDesk 2017-2018, covering privacy tech and ethereum. She has a background in digital art and philosophy, and has been writing about crypto since 2015.",
|
||||
"photos": [
|
||||
"web:jpg"
|
||||
]
|
||||
}
|
||||
],
|
||||
"tracks": [
|
||||
{
|
||||
"id": "lunarpunk",
|
||||
"name": "Dark side of the cycle",
|
||||
"shortname": "Lunarpunk",
|
||||
"examples": "* anonymous exchanges * Dark Forest infrastructure "
|
||||
},
|
||||
{
|
||||
"id": "privacy",
|
||||
"name": "Privacy",
|
||||
"examples": "* censorship-resistant infrastructure * zero knowledge"
|
||||
},
|
||||
{
|
||||
"id": "eth2",
|
||||
"name": "Post Merge Ethereum",
|
||||
"examples": "* scaling ETH * light clients"
|
||||
}
|
||||
],
|
||||
"event-types": [
|
||||
{
|
||||
"id": "talk",
|
||||
"name": "Talk"
|
||||
},
|
||||
{
|
||||
"id": "workshop",
|
||||
"name": "Workshop"
|
||||
},
|
||||
{
|
||||
"id": "panel",
|
||||
"name": "Panel Debate",
|
||||
"shortname": "Panel"
|
||||
},
|
||||
{
|
||||
"id": "lightning-series",
|
||||
"name": "Lightning Talks",
|
||||
"shortname": "lightnings",
|
||||
"url": "https://docs.utxo.cz/hlavni-program/formaty-programu#bleskova-prednaska-lightning-talk"
|
||||
},
|
||||
{
|
||||
"id": "other",
|
||||
"name": "Others"
|
||||
}
|
||||
],
|
||||
"events": [
|
||||
{
|
||||
"id": "o-praci-v-kryptu",
|
||||
"type": "panel",
|
||||
"name": "Z normální práce do krypta",
|
||||
"speakers": [
|
||||
"sona-parke",
|
||||
"stana-mutlova",
|
||||
"denisa-brichtova",
|
||||
"jana-kubatova",
|
||||
"lenka-stawarczyk"
|
||||
],
|
||||
"track": "zaklady",
|
||||
"duration": 85,
|
||||
"difficulty": "advanced",
|
||||
"tags": [
|
||||
"práce",
|
||||
"lifestyle",
|
||||
"budoucnost",
|
||||
"finanční nezávislost",
|
||||
"ženy"
|
||||
],
|
||||
"popularity": 0.9,
|
||||
"description": "Největší rozdíly “normální” práce a práce v kryptu? A proč vůbec přecházet? Jsou hlavní motivací obvykle prachy? První práce v kryptu umí být náraz. Mentální i fyzický. Tady se dozvíte, co pomáhá to ustát. A vytušíte, jaké to je, pracovat v kryptu a jestli je to pro vás. A jako bonus se možná i dozvíte kudy na to."
|
||||
},
|
||||
{
|
||||
"id": "btc-vs-altcoiny",
|
||||
"type": "panel",
|
||||
"name": "Bitcoin vs. altcoiny",
|
||||
"speakers": [
|
||||
"libor-flossler",
|
||||
"josef-tetek",
|
||||
"david-stancel"
|
||||
],
|
||||
"duration": 85,
|
||||
"difficulty": "beginner",
|
||||
"track": "btc",
|
||||
"tags": [
|
||||
"Bitcoin",
|
||||
"Lightning Network",
|
||||
"altcoiny",
|
||||
"DeFi",
|
||||
"finanční svoboda"
|
||||
],
|
||||
"popularity": 1,
|
||||
"fixed": {
|
||||
"date": "2022-06-05"
|
||||
},
|
||||
"description": "Diskuze bude probíhat mezi Bitcoin maximalistou Pepou Tětkem a Krypto realistou Davidem Stancelem. Cílem prezentace bude otevřená diskuze o parametrech, smysluplnosti, rizicích a potenciálním využití alterntivních kryptoměn v porovnání s Bitcoinem. Diskuzi bude moderovat Libor z Investocky.",
|
||||
"video": {
|
||||
"youtube": "WQLOuZRJbvk"
|
||||
}
|
||||
}
|
||||
],
|
||||
"stages": [
|
||||
{
|
||||
"id": "rajska-zahrada",
|
||||
"name": "P1 Rajská zahrada",
|
||||
"types": [
|
||||
"talk",
|
||||
"panel",
|
||||
"lightning-series"
|
||||
],
|
||||
"capacity": {
|
||||
"seat": 320,
|
||||
"stand": 80
|
||||
},
|
||||
"exclusivity": 1,
|
||||
"times": [
|
||||
"1/09:00-14:00",
|
||||
"1/14:30-19:00",
|
||||
"2/10:00-14:00",
|
||||
"2/15:00-19:00"
|
||||
],
|
||||
"livestream": true,
|
||||
"streams": [
|
||||
"1/08:45-19:30/jJUn50_iyFI",
|
||||
"2/09:45-19:15/osNm7D1R3rw"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "lustrovy-sal",
|
||||
"name": "P2 Lustrový sál",
|
||||
"types": [
|
||||
"talk",
|
||||
"panel",
|
||||
"lightning-series"
|
||||
],
|
||||
"capacity": {
|
||||
"seat": 135,
|
||||
"stand": 50
|
||||
},
|
||||
"exclusivity": 0.8,
|
||||
"times": [
|
||||
"1/09:30-13:00",
|
||||
"1/13:30-19:30",
|
||||
"2/10:00-13:00",
|
||||
"2/13:30-18:30"
|
||||
],
|
||||
"livestream": true,
|
||||
"streams": [
|
||||
"1/09:15-19:30/e73I-rQBozk",
|
||||
"2/09:45-18:30/WCoAJhVLLbM"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "klenbovy-sal",
|
||||
"name": "P3 Klenbový sál",
|
||||
"types": [
|
||||
"talk",
|
||||
"lightning-series"
|
||||
],
|
||||
"capacity": {
|
||||
"seat": 135,
|
||||
"stand": 50
|
||||
},
|
||||
"exclusivity": 0.6,
|
||||
"times": [
|
||||
"1/09:30-13:00",
|
||||
"1/13:30-19:30",
|
||||
"2/10:00-13:00",
|
||||
"2/13:30-18:30"
|
||||
],
|
||||
"livestream": true,
|
||||
"streams": [
|
||||
"1/09:15-19:30/tkRVtaCCgwk",
|
||||
"2/09:45-18:30/GZ5FFWTleTk"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "exit-room",
|
||||
"name": "P4 Exit room",
|
||||
"types": [
|
||||
"talk"
|
||||
],
|
||||
"capacity": {
|
||||
"seat": 70,
|
||||
"stand": 30
|
||||
},
|
||||
"exclusivity": 0.4,
|
||||
"times": [
|
||||
"1/09:30-13:30",
|
||||
"1/14:00-19:30",
|
||||
"2/10:00-13:30",
|
||||
"2/14:00-18:30"
|
||||
],
|
||||
"livestream": true,
|
||||
"streams": [
|
||||
"1/09:15-19:30/ku_qtzNsotg",
|
||||
"2/09:45-18:30/Gsf9ubuh7rU"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "knihovna",
|
||||
"name": "W1 Knihovna",
|
||||
"types": [
|
||||
"workshop"
|
||||
],
|
||||
"capacity": {
|
||||
"seat": 40,
|
||||
"stand": 20
|
||||
},
|
||||
"exclusivity": 1,
|
||||
"times": [
|
||||
"1/09:30-13:30",
|
||||
"1/14:00-19:30",
|
||||
"2/10:00-13:30",
|
||||
"2/14:00-18:30"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "white-workshop-room",
|
||||
"name": "W2 Table room",
|
||||
"types": [
|
||||
"workshop"
|
||||
],
|
||||
"capacity": {
|
||||
"seat": 35,
|
||||
"stand": 15
|
||||
},
|
||||
"exclusivity": 0.5,
|
||||
"times": [
|
||||
"1/09:30-13:30",
|
||||
"1/14:00-19:30",
|
||||
"2/10:00-13:30",
|
||||
"2/14:00-18:30"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "campfire-outdoor",
|
||||
"name": "🔥 C1 Campfire (venku)",
|
||||
"types": [
|
||||
"campfire"
|
||||
],
|
||||
"capacity": {
|
||||
"seat": 40,
|
||||
"stand": 100
|
||||
},
|
||||
"times": [
|
||||
"1/09:30-12:00",
|
||||
"1/12:30-17:00",
|
||||
"2/10:00-12:00",
|
||||
"2/12:30-18:30"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "campfire-indoor",
|
||||
"name": "🔥 C2 Campfire (uvnitř)",
|
||||
"types": [
|
||||
"campfire"
|
||||
],
|
||||
"capacity": {
|
||||
"seat": 20,
|
||||
"stand": 80
|
||||
},
|
||||
"times": [
|
||||
"1/09:30-12:00",
|
||||
"1/12:30-19:00",
|
||||
"2/10:00-12:00",
|
||||
"2/12:30-18:00"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "nft-chillout",
|
||||
"name": "NFT chillout",
|
||||
"types": [
|
||||
"nft-event"
|
||||
],
|
||||
"capacity": {
|
||||
"seat": 30,
|
||||
"stand": 40
|
||||
},
|
||||
"times": [
|
||||
"1/09:30-20:00",
|
||||
"2/10:00-18:00"
|
||||
],
|
||||
"hidden": true
|
||||
},
|
||||
{
|
||||
"id": "pitevna",
|
||||
"name": "Pitevna",
|
||||
"types": [
|
||||
"other"
|
||||
],
|
||||
"capacity": {
|
||||
"seat": 0,
|
||||
"stand": 150
|
||||
},
|
||||
"times": [
|
||||
"1/16:00-23:59"
|
||||
]
|
||||
}
|
||||
],
|
||||
"faqs": [
|
||||
{
|
||||
"question": "Jaký je časový harmonogram?",
|
||||
"answer": "Časový harmonogram všech přednášek bude zveřejněn nejpozději v pondělí 30. května ráno. Tady je zatím hrubý časový plán:* **Sobota**: 8:00 otevření, 9:00-9:15 zahájení, 9:30-19:30 program, 20:00-02:00+ party* **Neděle**: 9:00 otevření, 10:00-18:30 program, 18:30-19:00 zakončení, 20:00 uzavření"
|
||||
}
|
||||
],
|
||||
"partners": [
|
||||
{
|
||||
"id": "gweicz",
|
||||
"name": "Gwei.cz",
|
||||
"type": "community",
|
||||
"twitter": "gweicz",
|
||||
"desc": "Ethereum/DeFi/Web3 komunita",
|
||||
"photos": [
|
||||
"twitter:jpg"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "holky-v-kryptu",
|
||||
"name": "Holky v kryptu",
|
||||
"type": "community",
|
||||
"twitter": "holkyvkryptu",
|
||||
"desc": "Komunita pro začínající a mírně pokročilé uživatele",
|
||||
"photos": [
|
||||
"twitter:jpg"
|
||||
]
|
||||
}
|
||||
],
|
||||
"team": {
|
||||
"persons": {
|
||||
"tereza": {
|
||||
"name": "Tereza Starostová",
|
||||
"twitter": "tatereza5",
|
||||
"desc": "Zástupce [Holky v Kryptu](https://holkyvkryptu.cz/)"
|
||||
},
|
||||
"tree": {
|
||||
"name": "Tree",
|
||||
"twitter": "treecz",
|
||||
"desc": "Zástupce [Gwei.cz](http://gwei.cz/) a [BohemianDAO](http://bohemiandao.cz/)"
|
||||
},
|
||||
"exez": {
|
||||
"name": "Exez",
|
||||
"twitter": "OndraPulc"
|
||||
},
|
||||
"petr": {
|
||||
"name": "Petr Klein",
|
||||
"twitter": "kleinpetr_com"
|
||||
},
|
||||
"jiri": {
|
||||
"name": "Jiří Čepelka",
|
||||
"twitter": "JiriCepelka"
|
||||
}
|
||||
},
|
||||
"teams": {
|
||||
"core": {
|
||||
"name": "Core",
|
||||
"desc": "Hlavní team který koordinuje ostatní teamy a fakticky reprezentuje konferenci.",
|
||||
"members": [
|
||||
"tree",
|
||||
"tereza",
|
||||
"vojtch"
|
||||
],
|
||||
"lead": "tereza"
|
||||
},
|
||||
"legal": {
|
||||
"name": "Legal",
|
||||
"desc": "Legální entita (UTXO Foundation, z.s.), právní aspekty, účetnictví atp.",
|
||||
"members": [
|
||||
"tree",
|
||||
"tereza",
|
||||
"simona",
|
||||
"petr"
|
||||
],
|
||||
"lead": "tereza"
|
||||
},
|
||||
"sponsorship": {
|
||||
"name": "Sponzorství",
|
||||
"parent": "finance",
|
||||
"desc": "Shánění a domlouvání sponzorů.",
|
||||
"members": [
|
||||
"vojtch",
|
||||
"tereza"
|
||||
],
|
||||
"lead": "vojtch"
|
||||
},
|
||||
"venue": {
|
||||
"name": "Místo konání",
|
||||
"desc": "Vše co se týká místa konání a jeho vybavení.",
|
||||
"members": [
|
||||
"tereza",
|
||||
"tree",
|
||||
"vojtch"
|
||||
],
|
||||
"lead": "tereza"
|
||||
},
|
||||
"catering": {
|
||||
"name": "Catering",
|
||||
"parent": "venue",
|
||||
"desc": "Řešení jídla pro návštěvníky.",
|
||||
"members": [
|
||||
"tereza",
|
||||
"tree",
|
||||
"vojtch"
|
||||
],
|
||||
"lead": "tereza"
|
||||
},
|
||||
"program": {
|
||||
"name": "Program",
|
||||
"desc": "Dramaturgie konference - hlavní a doprovodný program.",
|
||||
"members": [
|
||||
"tree",
|
||||
"tereza"
|
||||
],
|
||||
"lead": "tree"
|
||||
},
|
||||
"speakers": {
|
||||
"name": "Přednášející",
|
||||
"parent": "program",
|
||||
"desc": "Shánění a koordinace přednášejících.",
|
||||
"members": [
|
||||
"tree",
|
||||
"tereza"
|
||||
],
|
||||
"lead": "tree"
|
||||
},
|
||||
"design": {
|
||||
"name": "Design",
|
||||
"desc": "Vizuální identita apod.",
|
||||
"members": [
|
||||
"tereza",
|
||||
"tree",
|
||||
"exez"
|
||||
],
|
||||
"lead": "tereza"
|
||||
},
|
||||
"marketing": {
|
||||
"name": "Marketing",
|
||||
"desc": "Aktivity propagující konferenci, sociální sítě.",
|
||||
"members": [
|
||||
"tereza",
|
||||
"tree",
|
||||
"jiri"
|
||||
],
|
||||
"lead": "tereza"
|
||||
},
|
||||
"web-ticketing": {
|
||||
"name": "Web a ticketing",
|
||||
"desc": "Technická realizace webu a ticketingu (prodej vstupenek).",
|
||||
"members": [
|
||||
"tree",
|
||||
"vojtch"
|
||||
],
|
||||
"lead": "tree"
|
||||
},
|
||||
"party": {
|
||||
"name": "Party",
|
||||
"parent": "program",
|
||||
"desc": "Společenský večer a party, která se uskuteční v rámci konference.",
|
||||
"members": [
|
||||
"tereza",
|
||||
"tree"
|
||||
],
|
||||
"lead": "tree"
|
||||
}
|
||||
}
|
||||
},
|
||||
"practical-info": [
|
||||
{
|
||||
"id": "doprava",
|
||||
"name": "Doprava",
|
||||
"text": "Gabriel Loci se nachází na pražském Smíchově na adrese ***Holečkova 106/10, 150 00 Praha 5-Smíchov*** ([mapa](https://goo.gl/maps/RW4gBPZZeDRRLkNk9)).Hlavní vstup do areálu: [GPS 50.074779, 14.396471](https://what3words.com/fandit.%C4%8Detn%C3%A1.hl%C3%ADdka \"GPS 50.074779, 14.396471\") ## Hromadná doprava (MHD)Doporučená velkokapacitní varianta dopravy na místo konání je využít metro na stanici Anděl (linka B) a odtud pěšky 900m, [viz. níže](#pěšky-od-metra-anděl-linka-b). Další varianty jsou přiblížit se o jednu stanici blíže [tramvají](#tramvaj), nebo přijet ke Gabriel Loci nejblíže [autobusem](#autobus), který ale nejezdí tak často a rozhodně nebude velkokapacitní (možné tlačenice).Ceny jízdného v pražské MHD ([web](https://pid.cz/praha/)): 30 minut - 30 Kč, 90 minut - 40 Kč, 24 hodin - 120 Kč, 72 hodin - 330 Kč.Na nákup jízdenky v mobilu a vyhledávání spojení doporučujeme aplikaci [PID Lítačka](https://app.pidlitacka.cz/) ([Android](https://play.google.com/store/apps/details?id=cz.dpp.praguepublictransport), [iOS](https://apps.apple.com/cz/app/pid-litacka/id983071129)).### Pěšky od metra Anděl (linka B)Konference se nachází 900m od stanice metra B \"Anděl\" spojovací lávkou OC Nový Smíchov (z 1. patra) a poté krátkou procházkou parkem Sacré Coeur.Připravili jsme [cestu v Google Maps](https://www.google.com/maps/dir/50.0714086,14.4041228/Kl%C3%A1%C5%A1ter+Svat%C3%A9ho+Gabriela,+Hole%C4%8Dkova+106%2F10,+150+00+Praha+5-Sm%C3%ADchov/@50.0732931,14.3995812,17.53z/data=!4m9!4m8!1m0!1m5!1m1!1s0x470b94ffe90d8bef:0xe44f072ee3ed8c90!2m2!1d14.3960564!2d50.0748648!3e2 \"cestu v google maps\") přímo ze stanice metra až na konferenci.### TramvajNejbližší tramvajová zastávka je [Bertramka](https://goo.gl/maps/FvpgohrsEMzShQLe7). Dostanete se na ní linkami 9, 10, 15, 16, 44.Po výstupu na zastávce Bertramka Vás čeká ještě cca 450 metrů pěšky. Připravili jsme [cestu v Google Maps](https://www.google.com/maps/dir/Bertramka,+Sm%C3%ADchov,+150+00+Praha+5/50.0747697,14.3964571/@50.0745687,14.3958081,103m/data=!3m1!1e3!4m9!4m8!1m5!1m1!1s0x470b95aace507bb5:0xb36fd7c9183b2e8f!2m2!1d14.392434!2d50.072239!1m0!3e2) přímo ze zastávky až na konferenci. ### AutobusHromadnou dopravou se k nám nejblíže dostanete [autobusem 176](https://jrportal.dpp.cz/DataFTP/JRPortalData/176/20220523/176_(237_10)T.pdf \"autobusem 176\") ze kterého vystoupíte na zastávce Holečkova a následně půjdete 50 metrů \"z kopce\".Autobus jezdí jednou za 15-20 minut z [autobusové zastávky](https://goo.gl/maps/QRp9pdQ7dduhJJTEA) u metra Karlovo Náměstí (Linka B). Doba jízdy z Karlova náměstí je 15 minut a všechny spoje zajišťuje nízkopodlažní vozidlo.## AutoV Praze 5 jsou modré zóny, **v areálu bohužel nejsou volné parkovací plochy**, doporučujeme auto zaparkovat na záchytných parkovištích P+R Prahy a poté pokračovat MHD - přehled, aktuální obsazenost + ceny celodenního parkování 50-100 Kč, 24 hodin 200 Kč, najdete na této [stránce](https://www.dpp.cz/cestovani/parkovani-p-r).Parking v OC Nový Smíchov je na 5 hodin zdarma o víkendu, Víkendové parkování za 590 Kč V -1. podlaží a v -2. podlaží. Od pátku 16:00 do neděle 18:00. Pro více informací navštivte jejich [web](https://novy-smichov.klepierre.cz/aktualni-akce/akce/parkovani).TIP: Parkování na Praze 13 zdarma (nejsou modré zóny) na sídlišti u metra. Ulice: Petržílkova (metro Hůrka), Ovčí hájek (metro Nové Butovice) -> 10 minut na stanici Anděl.## TaxiDoporučujeme vystoupit u křižovatek *Holečkova / Kobrova* nebo *Holečkova / Švédská*.V Praze fungují taxi aplikace [Uber](https://uber.com/), [Bolt](https://bolt.eu/) nebo [Liftago](https://www.liftago.com/)."
|
||||
},
|
||||
{
|
||||
"id": "jidlo-piti",
|
||||
"name": "Jídlo a pití",
|
||||
"text": "## Hlavní jídlaNa místě bude několik vybraných food trucků, které nabídnou široké spektrum jídel. Krom burgerů se můžete těšit na italskou kuchyni, ale také třeba na barevné veganské sushi.## Menší jídlaFood trucky budou nabízet i menší jídla a dezerty, pokud budete mít chuť na svačinku :)## PitíV celém objektu se bude nacházet několik barů ve kterých bude možné koupit pivo nebo třeba colu. Dostupné bude především pivo Budvar 33, ale samozřejmě také další značky. Večer budou na barech dostupné i drinky.Balená voda bude pro účastníky konference dostupná zdarma při vstupu.## KávaKáva bude dostupná ve vyhrazeném kávovém baru uvnitř a v kavárně venku primárně od značky [Café Reserva](https://www.cafereserva.cz/ \"Café Reserva\")."
|
||||
},
|
||||
{
|
||||
"id": "ubytovani",
|
||||
"name": "Ubytování",
|
||||
"text": "K ubytování jsme pro vás vybrali několik možností v různých cenových kategoriích. ## Kempy a penziony (budget)- [Kemp Drusus](https://drusus.com/), K Řeporyjím 4, 155 00 Praha 13-Třebonice, cena za noc: chatka - 600 Kč, penzion - 900 Kč## Hostely- [Hostel Safestay](https://www.safestay.com/prague-charles-bridge \"Hostel Safestay\") Prague Charles Bridge, Ostrovní 131, 110 00 Nové Město## Hotely- [Hotel Vienna House Andel](https://www.viennahouse.com/andels-prague \"Hotel Vienna House Andel\"), Stroupežnického 3181/21, 150 00 Praha 5-Smíchov, cena za noc 3720 Kč- [Hotel IBIS Andel](https://all.accor.com/hotel/5211/index.en.shtml \"Hotel IBIS Andel\"), Plzeňská 14, 150 00 Praha 5-Smíchov- [Hotel Golf](https://www.hotel-golf.cz/ \"Hotel Golf\"), 215A, Plzeňská 103, Motol, 150 00 Praha 5, cena za noc 3600 KčDalší ubytování najdete na [Google Hotels](https://hotels.google.com/), [Airbnb](https://www.airbnb.com/), [Hotels.com](https://hotels.com/) nebo [Booking.com](https://booking.com/)."
|
||||
}
|
||||
],
|
||||
"schedule": [
|
||||
{
|
||||
"id": "aq",
|
||||
"date": "2022-06-04",
|
||||
"stage": "rajska-zahrada",
|
||||
"period": {
|
||||
"start": "2022-06-04T07:00:00.000Z",
|
||||
"end": "2022-06-04T07:30:00.000Z"
|
||||
},
|
||||
"event": "opening-ceremony"
|
||||
},
|
||||
{
|
||||
"id": "cs",
|
||||
"date": "2022-06-05",
|
||||
"stage": "white-workshop-room",
|
||||
"period": {
|
||||
"start": "2022-06-05T14:00:00.000Z",
|
||||
"end": "2022-06-05T15:30:00.000Z"
|
||||
},
|
||||
"event": "bezpecnost-workshop"
|
||||
},
|
||||
{
|
||||
"id": "bi",
|
||||
"date": "2022-06-04",
|
||||
"stage": "rajska-zahrada",
|
||||
"period": {
|
||||
"start": "2022-06-04T07:30:00.000Z",
|
||||
"end": "2022-06-04T08:30:00.000Z"
|
||||
},
|
||||
"event": "danove-triky-a-kouzla"
|
||||
},
|
||||
{
|
||||
"id": "bb",
|
||||
"date": "2022-06-04",
|
||||
"stage": "lustrovy-sal",
|
||||
"period": {
|
||||
"start": "2022-06-04T07:30:00.000Z",
|
||||
"end": "2022-06-04T08:30:00.000Z"
|
||||
},
|
||||
"event": "adopce-btc"
|
||||
},
|
||||
{
|
||||
"id": "cy",
|
||||
"date": "2022-06-05",
|
||||
"stage": "knihovna",
|
||||
"period": {
|
||||
"start": "2022-06-05T10:30:00.000Z",
|
||||
"end": "2022-06-05T11:30:00.000Z"
|
||||
},
|
||||
"event": "bleskomat-worskhop"
|
||||
},
|
||||
{
|
||||
"id": "b3",
|
||||
"date": "2022-06-04",
|
||||
"stage": "klenbovy-sal",
|
||||
"period": {
|
||||
"start": "2022-06-04T07:30:00.000Z",
|
||||
"end": "2022-06-04T08:00:00.000Z"
|
||||
},
|
||||
"event": "uvod-near"
|
||||
},
|
||||
{
|
||||
"id": "ac",
|
||||
"date": "2022-06-04",
|
||||
"stage": "exit-room",
|
||||
"period": {
|
||||
"start": "2022-06-04T07:30:00.000Z",
|
||||
"end": "2022-06-04T08:30:00.000Z"
|
||||
},
|
||||
"event": "defi-pro-zacatecniky"
|
||||
},
|
||||
{
|
||||
"id": "d0",
|
||||
"date": "2022-06-04",
|
||||
"stage": "campfire-indoor",
|
||||
"period": {
|
||||
"start": "2022-06-04T16:30:00.000Z",
|
||||
"end": "2022-06-04T17:00:00.000Z"
|
||||
},
|
||||
"event": "idealni-kryptoportfolio"
|
||||
},
|
||||
{
|
||||
"id": "dk",
|
||||
"date": "2022-06-04",
|
||||
"stage": "campfire-indoor",
|
||||
"period": {
|
||||
"start": "2022-06-04T07:30:00.000Z",
|
||||
"end": "2022-06-04T08:30:00.000Z"
|
||||
},
|
||||
"event": "bohemiandao-campfire"
|
||||
}
|
||||
]
|
||||
},
|
||||
"stats": {
|
||||
"counts": {
|
||||
"speakers": 10,
|
||||
"tracks": 10,
|
||||
"event-types": 7,
|
||||
"events": 182,
|
||||
"stages": 10,
|
||||
"faqs": 6,
|
||||
"partners": 48,
|
||||
"projects": 72,
|
||||
"practical-info": 3,
|
||||
"schedule": 155
|
||||
}
|
||||
},
|
||||
"time": "2022-07-14T03:29:30.958Z"
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
@tailwind base;
|
||||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
|
||||
@layer components {
|
||||
.active {
|
||||
@apply underline;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<link rel="icon" href="%sveltekit.assets%/icons/favicon-32x32.png" />
|
||||
<meta name="description" content="PRIVACY & SECURITY EDITION HACKATHON" />
|
||||
|
||||
<!-- Facebook Meta Tags -->
|
||||
<meta property="og:url" content="https://ethbrno.pages.dev/">
|
||||
<meta property="og:type" content="website">
|
||||
<meta property="og:title" content="ETHBrno²">
|
||||
<meta property="og:description" content="PRIVACY & SECURITY EDITION HACKATHON">
|
||||
<meta property="og:image" content="https://ethbrno.pages.dev/ogbrno.png">
|
||||
|
||||
<!-- Twitter Meta Tags -->
|
||||
<meta name="twitter:card" content="summary_large_image">
|
||||
<meta property="twitter:domain" content="ethbrno.pages.dev">
|
||||
<meta property="twitter:url" content="https://ethbrno.pages.dev/">
|
||||
<meta name="twitter:title" content="ETHBrno²">
|
||||
<meta name="twitter:description" content="PRIVACY & SECURITY EDITION HACKATHON">
|
||||
<meta name="twitter:image" content="https://ethbrno.pages.dev/ogbrno.png">
|
||||
|
||||
<!-- Plausible -->
|
||||
<script defer data-domain="ethbrno.cz" src="https://x.gwei.cz/js/script.js"></script>
|
||||
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
%sveltekit.head%
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div>%sveltekit.body%</div>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -0,0 +1,34 @@
|
|||
<script>
|
||||
import logo from '$lib/assets/logo_black.svg';
|
||||
import cityscape from '$lib/assets/cityscape2.png';
|
||||
</script>
|
||||
|
||||
<footer class="bg-black mx-auto">
|
||||
<div class="pt-12">
|
||||
<img src={cityscape} alt="cityscape" class="object-cover w-full" />
|
||||
</div>
|
||||
<div class="bg-white flex flex-col justify-end">
|
||||
<div
|
||||
class="container mx-auto px-4 flex flex-wrap flex-col sm:flex-row justify-center items-center h-60"
|
||||
>
|
||||
<a
|
||||
href="https://twitter.com/ethbrno"
|
||||
rel="noopener noreferrer"
|
||||
class="text-black ml-1"
|
||||
target="_blank"><img src={logo} class=" h-6" alt="logo" /></a
|
||||
>
|
||||
|
||||
<span class="inline-flex sm:ml-auto sm:mt-0 mt-2 justify-center sm:justify-start">
|
||||
<a class="text-black mr-10" href="https://twitter.com/ethbrno" rel="noopener noreferrer"
|
||||
>Twitter
|
||||
</a>
|
||||
<a
|
||||
class="ml-3 text-black"
|
||||
href="https://matrix.to/#/#ethbrno:gwei.cz"
|
||||
rel="noopener noreferrer"
|
||||
>Chat
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
|
@ -0,0 +1,89 @@
|
|||
<script>
|
||||
/**
|
||||
* @type {boolean}
|
||||
*/
|
||||
export let open;
|
||||
import logo from '$lib/assets/logo_black.svg';
|
||||
import { page, session } from '$app/stores';
|
||||
</script>
|
||||
|
||||
<nav class="flex flex-wrap items-center justify-between px-4 bg-white mx-auto sticky top-0 z-50">
|
||||
<div class="container mx-auto flex flex-wrap items-center justify-between">
|
||||
<div class="w-full relative flex justify-between lg:w-auto lg:static lg:block lg:justify-start">
|
||||
<a
|
||||
class="text-sm leading-relaxed inline-block mr-4 p-4 whitespace-nowrap uppercase underline"
|
||||
href="/"
|
||||
>
|
||||
<img src={logo} alt="logo" class="w-[145px] h-[54px] p-2 -ml-3" />
|
||||
</a>
|
||||
<button
|
||||
class="text-black cursor-pointer text-xl leading-none px-3 py-1 border border-solid border-transparent rounded bg-transparent block lg:hidden outline-none focus:outline-none"
|
||||
type="button"
|
||||
on:click={() => open = !open}
|
||||
>
|
||||
☰
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="{open ? 'lg:flex flex-grow items-center flex' : 'lg:flex flex-grow items-center hidden'}" id="navbar">
|
||||
<ul
|
||||
class="flex flex-col lg:flex-row lg:flex-grow-0 lg:mt-0 list-none lg:ml-auto text-base flex-grow my-8 lg:my-0"
|
||||
>
|
||||
<li>
|
||||
<a
|
||||
href="/"
|
||||
class="p-5 flex items-center uppercase font-bold leading-snug text-black hover:opacity-75 hover:underline" class:active={$page.url.pathname === '/'}
|
||||
>Home</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="/manual"
|
||||
class="p-5 flex items-center uppercase font-bold leading-snug text-black hover:opacity-75 hover:underline hidden"
|
||||
>Hacker Manual</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="/schedule"
|
||||
class="p-5 flex items-center uppercase font-bold leading-snug text-black hover:opacity-75 hover:underline hidden"
|
||||
>Schedule</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="/venues"
|
||||
class="p-5 flex items-center uppercase font-bold leading-snug text-black hover:opacity-75 hover:underline"
|
||||
class:active={$page.url.pathname === '/venues'}
|
||||
>Venues</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="/contributors"
|
||||
class="p-5 flex items-center uppercase font-bold leading-snug text-black hover:opacity-75 hover:underline"
|
||||
class:active={$page.url.pathname === '/contributors' || $page.url.pathname === '/team'}
|
||||
>Contributors</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="https://matrix.to/#/#ethbrno:gwei.cz"
|
||||
rel="noopener noreferrer"
|
||||
class="p-5 flex items-center uppercase font-bold leading-snug text-black hover:opacity-75 hover:underline"
|
||||
>Chat</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="https://join.ethbrno.cz"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
class="p-5 flex items-center bg-black text-white uppercase font-bold leading-snug hover:opacity-75 hover:underline"
|
||||
>Join</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
Za Šířka: | Výška: | Velikost: 75 KiB |
Za Šířka: | Výška: | Velikost: 6.4 KiB |
|
@ -0,0 +1,11 @@
|
|||
/** @type {import('./$types').PageLoad} */
|
||||
|
||||
export async function load({fetch}) {
|
||||
const { spec } = await fetch('https://spec.utxo.cz/22/bundle.json').then((r) => r.json());
|
||||
//const { spec } = await fetch('/api/datafetch').then((r) => r.json());
|
||||
|
||||
console.log(spec);
|
||||
return {
|
||||
data: spec
|
||||
};
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
<script>
|
||||
import '../app.css';
|
||||
import Navigation from '$lib/Navigation.svelte';
|
||||
import Footer from '$lib/Footer.svelte';
|
||||
</script>
|
||||
|
||||
<Navigation open={false} />
|
||||
<slot />
|
||||
<Footer />
|
|
@ -0,0 +1,125 @@
|
|||
<svelte:head>
|
||||
<title>ETHBrno²</title>
|
||||
</svelte:head>
|
||||
<section class="text-gray-400 bg-black">
|
||||
<div class="w-full mx-auto flex md:flex-row md:h-5/6 flex-col items-center">
|
||||
<div
|
||||
class="lg:max-w-lg lg:w-full md:w-1/2 md:mb-0 mb-10 md:flex hidden justify-center h-[700px]"
|
||||
>
|
||||
<svg class="block w-full">
|
||||
<filter id="pixelate" x="0" y="0">
|
||||
<feFlood x="4" y="4" height="2" width="2" />
|
||||
|
||||
<feComposite width="2" height="2" />
|
||||
|
||||
<feTile result="a" />
|
||||
|
||||
<feComposite in="SourceGraphic" in2="a" operator="in" />
|
||||
|
||||
<feMorphology operator="erode" id="morph" radius="5" />
|
||||
</filter>
|
||||
<animate
|
||||
xlink:href="#morph"
|
||||
id="anim-dialiate"
|
||||
attributeName="radius"
|
||||
values="0;10;0"
|
||||
dur="5s"
|
||||
fill="freeze"
|
||||
repeatCount="indefinite"
|
||||
/>
|
||||
|
||||
<image
|
||||
filter="url(#pixelate)"
|
||||
xlink:href="cam2.png"
|
||||
width="100%"
|
||||
height="100%"
|
||||
preserveAspectRatio="xMidYMid slice"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<div
|
||||
class="lg:flex-grow md:w-1/2 lg:pl-32 md:pl-16 pt-4 flex flex-col md:items-start md:text-left items-center text-center text-white transition-transform"
|
||||
>
|
||||
<img src="logo.svg" class="md:-ml-4 p-2 md:p-0 w-[343px] h-[127px]" alt="logo" />
|
||||
<p class="text-3xl my-2">privacy {`&`} security edition</p>
|
||||
<p class="text-xl">NOVEMBER 11-13, 2022</p>
|
||||
<p class="text-xl">Brno, Czech republic</p>
|
||||
<div class="h-[1px] bg-white w-full my-2 opacity-20" />
|
||||
<p class="mb-8 py-4 leading-relaxed opacity-50 text-lg font-light">
|
||||
#freedom #anonymity #non-kyc #encryption #selfsovereignty #p2p #opensource #web3
|
||||
#smartcontracts #audits #vulnerabilities #analytics #wallets #scams #darkforest #mev
|
||||
#zeroknowledgeproofs
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section class="text-gray-600 bg-white body-font">
|
||||
<div class="container mx-auto flex px-5 py-24 md:flex-row flex-col items-center">
|
||||
<div
|
||||
class="lg:flex-grow md:w-1/2 lg:pl-32 md:pl-16 lg:pr-32 md:pr-16 flex flex-col md:items-start md:text-left mb-16 md:mb-0 items-center text-center"
|
||||
>
|
||||
<h1 class="md:text-5xl text-3xl font-bold mb-4 text-black">About</h1>
|
||||
|
||||
<p class="mb-8 leading-relaxed">
|
||||
ETHBrno² is an annual independent {`&`} open community hackathon (former conference) for supporters
|
||||
of decentralised finance, smart contracts and Web3 happening in Brno, Czech Republic. ETHBrno²
|
||||
is the second, and we believe the best yet, edition.
|
||||
</p>
|
||||
|
||||
<p class="mb-8 leading-relaxed">
|
||||
ETHBrno² events are organized by Gwei.cz community with the help of the UTXO Foundation.
|
||||
</p>
|
||||
|
||||
<p class="mb-8 leading-relaxed">This year we are focusing on privacy and security topics.</p>
|
||||
|
||||
<div class="flex justify-center">
|
||||
<a
|
||||
href="https://join.ethbrno.cz/"
|
||||
class="inline-flex text-white bg-black border-0 py-2 px-6 focus:outline-none hover:bg-black text-lg"
|
||||
>Apply To Hack</a
|
||||
>
|
||||
<a
|
||||
href="https://ethbrno.cz/sponsor-deck.pdf"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
class="ml-4 inline-flex text-black bg-white border-0 py-2 px-6 focus:outline-none hover:bg-gray-200 text-lg underline"
|
||||
>Sponsor</a
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
<div class="lg:max-w-lg lg:w-full md:w-1/2 w-5/6">
|
||||
<img class="object-cover object-center" alt="hero" src="key.png" />
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section class="text-gray-400 bg-black body-font">
|
||||
<div class="container mx-auto flex px-5 py-24 md:flex-row flex-col items-center">
|
||||
<div class="lg:max-w-lg lg:w-full md:w-1/2 w-5/6 md:mb-0 mb-10 flex justify-center">
|
||||
<img class="object-cover object-center" alt="hero" src="lock.png" />
|
||||
</div>
|
||||
<div
|
||||
class="lg:flex-grow md:w-1/2 lg:pl-32 md:pl-16 lg:pr-32 md:pr-16 flex flex-col md:items-start md:text-left items-center text-center"
|
||||
>
|
||||
<h1 class="md:text-5xl text-3xl mb-4 font-bold text-white">Manifesto</h1>
|
||||
<p class="mb-4 leading-relaxed">
|
||||
We believe that privacy is a fundamental human right. And good privacy needs good security
|
||||
foundations. Especially today, in a digital age full of people, organizations or governments
|
||||
that want to control you, your money or your data. Therefore, the second edition of ETHBrno
|
||||
(ETHBrno²) will be mainly dedicated to these important topics ― privacy & security.
|
||||
</p>
|
||||
<p class="mb-4 leading-relaxed">
|
||||
Our hackathon is for everyone who understands the urgency of these issues and wants to help.
|
||||
We want to present the current progress in this sector as well as the projects, technologies
|
||||
and people involved. We are Ethereum people, but we welcome creators and fans of all
|
||||
blockchains and directions.
|
||||
</p>
|
||||
<p class="mb-4 leading-relaxed">
|
||||
Let's learn together to defend against all threats, whether it's loss of privacy and state
|
||||
oppression, smart-contract exploits or simple phishing scams. Let's learn how to analyse
|
||||
them retrospectively. Let's learn how to use the right tools, and if we don't have them,
|
||||
let's create them together.
|
||||
</p>
|
||||
<p class="leading-relaxed">Don't Trust. Verify. - Run a node - Protect privacy</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
|
@ -0,0 +1,7 @@
|
|||
/** @type {import('./$types').PageLoad} */
|
||||
export async function load({ parent }) {
|
||||
const { data: { speakers } } = await parent();
|
||||
//console.log(speakers);
|
||||
|
||||
return speakers;
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
<svelte:head>
|
||||
<title>Contributors: ETHBrno²</title>
|
||||
</svelte:head>
|
||||
<script>
|
||||
/** @type {import('./$types').PageData} */
|
||||
export let data;
|
||||
//console.log(data);
|
||||
</script>
|
||||
|
||||
<section class="text-gray-400 body-font bg-black">
|
||||
<div class=" px-5 py-24 mx-auto">
|
||||
<div class="flex flex-col text-center w-full mb-20">
|
||||
<h1 class="sm:text-4xl text-3xl font-medium title-font mb-2 text-white">Speakers</h1>
|
||||
<p class="lg:w-2/3 mx-auto leading-relaxed text-base">
|
||||
We are here to inspire and help your project succeed.
|
||||
</p>
|
||||
<div class="flex mx-auto border-2 border-black overflow-hidden mt-6 bg-black">
|
||||
<a class="py-1 px-4 text-white focus:outline-none" href="/contributors">Speakers</a>
|
||||
<a class="py-1 px-4 bg-black hover:bg-black text-gray-300 focus:outline-none" href="/team"
|
||||
>Team</a
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-wrap -m-4">
|
||||
{#each Object.values(data) as item}
|
||||
{#if item.name !== undefined}<li>{item.name}</li>{/if}
|
||||
{/each}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
|
@ -0,0 +1,4 @@
|
|||
/** @type {import('./$types').PageLoad} */
|
||||
export async function load() {
|
||||
return {};
|
||||
};
|
|
@ -0,0 +1,5 @@
|
|||
<script>
|
||||
/** @type {import('./$types').PageData} */
|
||||
//export let data;
|
||||
</script>
|
||||
<h1>yo dudes</h1>
|
|
@ -0,0 +1,247 @@
|
|||
<svelte:head>
|
||||
<title>Venues: ETHBrno²</title>
|
||||
</svelte:head>
|
||||
<section class="text-gray-400 bg-black body-font">
|
||||
<div class="container mx-auto flex px-5 py-24 md:flex-row flex-col items-center">
|
||||
<div
|
||||
class="lg:flex-grow md:w-1/2 lg:pr-24 md:pr-16 flex flex-col md:items-start md:text-left mb-16 md:mb-0 items-center text-center"
|
||||
>
|
||||
<h1 class="title-font sm:text-4xl text-3xl mb-4 font-medium text-white">
|
||||
<a href="https://www.hubbrno.cz/en/" class="hover:underline"> Impact Hub Brno </a>
|
||||
</h1>
|
||||
<p class="leading-relaxed text-white">Opening hours:</p>
|
||||
<p class="leading-relaxed mb-5 text-white">Fri Nov 11 13:00 - Sun Nov 13 20:00 (nonstop!)</p>
|
||||
<div class="leading-relaxed relative mb-4">
|
||||
The main venue will be a modern coworking space called Impact Hub, just a few minutes walk
|
||||
from the city centre and the main train station. In less than 7 years of its existence, it
|
||||
has become an important part of Brno's freelancing community, inspiring and connecting many
|
||||
people. Great place for our hackathon, don't you think?
|
||||
</div>
|
||||
<div class="leading-relaxed relative mb-4">
|
||||
Impact Hub will serve as the main basecamp for the hackathon and will be available for
|
||||
hackers all day 24/7.
|
||||
</div>
|
||||
<div class="leading-relaxed relative mb-4">
|
||||
You'll have everything you might need - different work areas (single or team, sitting or
|
||||
standing), fast internet, power sockets everywhere, meeting rooms, refreshments and much
|
||||
more. We want you to feel as comfortable as possible and we will do everything we can to
|
||||
make that happen.
|
||||
</div>
|
||||
<div class="flex justify-center">
|
||||
<a
|
||||
href="https://goo.gl/maps/wutjvk8jCFuDcvSG6"
|
||||
class="inline-flex text-white bg-gray-500 border-0 py-2 px-6 focus:outline-none hover:bg-gray-600 text-lg"
|
||||
>
|
||||
Navigate
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="lg:max-w-lg lg:w-full md:w-1/2 w-5/6">
|
||||
<picture>
|
||||
<source srcSet="/venues/ih1.avif" type="image/avif" />
|
||||
<source srcSet="/venues/ih1.jpg" type="image/jpeg" />
|
||||
<img
|
||||
class="object-cover object-center grayscale hover:grayscale-0"
|
||||
decoding="async"
|
||||
loading="lazy"
|
||||
src="/venues/ih1.jpg"
|
||||
alt="venue"
|
||||
/>
|
||||
</picture>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section class="text-gray-400 body-font bg-black">
|
||||
<div class="container px-5 pb-12 mx-auto">
|
||||
<div class="flex flex-wrap -m-4">
|
||||
<div class="xl:w-1/4 md:w-1/2 w-full p-4">
|
||||
<div class="bg-gray-800 bg-opacity-40 p-6">
|
||||
<picture>
|
||||
<source srcSet="/venues/ih2.avif" type="image/avif" />
|
||||
<source srcSet="/venues/ih2.jpg" type="image/jpeg" />
|
||||
<img
|
||||
decoding="async"
|
||||
loading="lazy"
|
||||
class="h-40 w-full object-cover object-center mb-6 grayscale hover:grayscale-0"
|
||||
src="/venues/ih2.jpg"
|
||||
alt="venue"
|
||||
/>
|
||||
</picture>
|
||||
<h3 class="tracking-widest text-gray-400 text-xs font-medium title-font">ENTRY</h3>
|
||||
<h2 class="text-lg text-white font-medium title-font mb-4">nevim</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="xl:w-1/4 md:w-1/2 w-full p-4">
|
||||
<div class="bg-gray-800 bg-opacity-40 p-6">
|
||||
<picture>
|
||||
<source srcSet="/venues/ih3.avif" type="image/avif" />
|
||||
<source srcSet="/venues/ih3.jpg" type="image/jpeg" />
|
||||
<img
|
||||
decoding="async"
|
||||
loading="lazy"
|
||||
class="h-40 w-full object-cover object-center mb-6 grayscale hover:grayscale-0"
|
||||
src="/venues/ih3.jpg"
|
||||
alt="venue"
|
||||
/>
|
||||
</picture>
|
||||
<h3 class="tracking-widest text-gray-400 text-xs font-medium title-font">ROOM</h3>
|
||||
<h2 class="text-lg text-white font-medium title-font mb-4">nevim</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="xl:w-1/4 md:w-1/2 w-full p-4">
|
||||
<div class="bg-gray-800 bg-opacity-40 p-6">
|
||||
<picture>
|
||||
<source srcSet="/venues/ih4.avif" type="image/avif" />
|
||||
<source srcSet="/venues/ih4.jpg" type="image/jpeg" />
|
||||
<img
|
||||
decoding="async"
|
||||
loading="lazy"
|
||||
class="h-40 w-full object-cover object-center mb-6 grayscale hover:grayscale-0"
|
||||
src="/venues/ih4.jpg"
|
||||
alt="venue"
|
||||
/>
|
||||
</picture>
|
||||
<h3 class="tracking-widest text-gray-400 text-xs font-medium title-font">CONFERENCE</h3>
|
||||
<h2 class="text-lg text-white font-medium title-font mb-4">nevim</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="xl:w-1/4 md:w-1/2 w-full p-4">
|
||||
<div class="bg-gray-800 bg-opacity-40 p-6">
|
||||
<picture>
|
||||
<source srcSet="/venues/ih5.avif" type="image/avif" />
|
||||
<source srcSet="/venues/ih5.jpg" type="image/jpeg" />
|
||||
<img
|
||||
decoding="async"
|
||||
loading="lazy"
|
||||
class="h-40 w-full object-cover object-center mb-6 grayscale hover:grayscale-0"
|
||||
src="/venues/ih5.jpg"
|
||||
alt="venue"
|
||||
/>
|
||||
</picture>
|
||||
<h3 class="tracking-widest text-gray-400 text-xs font-medium title-font">TERRACE</h3>
|
||||
<h2 class="text-lg text-white font-medium title-font mb-4">něco</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section class="text-gray-400 bg-black body-font">
|
||||
<div class="container mx-auto flex px-5 py-24 md:flex-row flex-col items-center">
|
||||
<div class="lg:max-w-lg lg:w-full md:w-1/2 w-5/6 md:mb-0 mb-10">
|
||||
<picture>
|
||||
<source srcSet="/venues/cc1.avif" type="image/avif" />
|
||||
<source srcSet="/venues/cc1.jpg" type="image/jpeg" />
|
||||
<img
|
||||
class="object-cover object-center grayscale hover:grayscale-0"
|
||||
decoding="async"
|
||||
loading="lazy"
|
||||
src="/venues/cc1.jpg"
|
||||
alt="venue"
|
||||
/>
|
||||
</picture>
|
||||
</div>
|
||||
<div
|
||||
class="lg:flex-grow md:w-1/2 lg:pl-24 md:pl-16 flex flex-col md:items-start md:text-left items-center text-center"
|
||||
>
|
||||
<h1 class="title-font sm:text-4xl text-3xl mb-4 font-medium text-white">Clubco Brno</h1>
|
||||
<p class="leading-relaxed text-white">Opening hours:</p>
|
||||
<p class="leading-relaxed mb-5 text-white">
|
||||
Fri Nov 11: 14:30 - 22:00, Sat Nov 10: 9:00 - 22:00, Sun Nov 13: 9:00 - 17:00
|
||||
</p>
|
||||
<p class="relative mb-4">
|
||||
Additional venue, only 5 minutes walk (400m) from the main venue (Impact Hub).
|
||||
</p>
|
||||
{' '}
|
||||
<p class="relative mb-4">
|
||||
It will be an additional space for hackers that offers another style, with private meeting
|
||||
rooms and open workspaces. It also includes an event space where additional workshops and
|
||||
lectures will be held.
|
||||
</p>
|
||||
<div class="relative mb-4">
|
||||
This location will NOT be open 24/7, you will need to move to the Impact Hub for the night.
|
||||
</div>
|
||||
<div class="flex justify-center">
|
||||
<a
|
||||
href="https://g.page/clubco-brno?share"
|
||||
class="inline-flex text-white bg-gray-500 border-0 py-2 px-6 focus:outline-none hover:bg-gray-600 text-lg"
|
||||
>
|
||||
Navigate
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section class="text-gray-400 body-font bg-black">
|
||||
<div class="container px-5 pb-12 mx-auto">
|
||||
<div class="flex flex-wrap -m-4">
|
||||
<div class="xl:w-1/4 md:w-1/2 w-full p-4">
|
||||
<div class="bg-gray-800 bg-opacity-40 p-6">
|
||||
<picture>
|
||||
<source srcSet="/venues/cc2.avif" type="image/avif" />
|
||||
<source srcSet="/venues/cc2.jpg" type="image/jpeg" />
|
||||
<img
|
||||
decoding="async"
|
||||
loading="lazy"
|
||||
class="h-40 w-full object-cover object-center mb-6 grayscale hover:grayscale-0"
|
||||
src="/venues/cc2.jpg"
|
||||
alt="venue"
|
||||
/>
|
||||
</picture>
|
||||
<h3 class="tracking-widest text-gray-400 text-xs font-medium title-font">ENTRY</h3>
|
||||
<h2 class="text-lg text-white font-medium title-font mb-4">nevim</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="xl:w-1/4 md:w-1/2 w-full p-4">
|
||||
<div class="bg-gray-800 bg-opacity-40 p-6">
|
||||
<picture>
|
||||
<source srcSet="/venues/cc3.avif" type="image/avif" />
|
||||
<source srcSet="/venues/cc3.jpg" type="image/jpeg" />
|
||||
<img
|
||||
decoding="async"
|
||||
loading="lazy"
|
||||
class="h-40 w-full object-cover object-center mb-6 grayscale hover:grayscale-0"
|
||||
src="/venues/cc3.jpg"
|
||||
alt="venue"
|
||||
/>
|
||||
</picture>
|
||||
<h3 class="tracking-widest text-gray-400 text-xs font-medium title-font">ROOM</h3>
|
||||
<h2 class="text-lg text-white font-medium title-font mb-4">nevim</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="xl:w-1/4 md:w-1/2 w-full p-4">
|
||||
<div class="bg-gray-800 bg-opacity-40 p-6">
|
||||
<picture>
|
||||
<source srcSet="/venues/cc4.avif" type="image/avif" />
|
||||
<source srcSet="/venues/cc4.jpg" type="image/jpeg" />
|
||||
<img
|
||||
decoding="async"
|
||||
loading="lazy"
|
||||
class="h-40 w-full object-cover object-center mb-6 grayscale hover:grayscale-0"
|
||||
src="/venues/cc4.jpg"
|
||||
alt="venue"
|
||||
/>
|
||||
</picture>
|
||||
<h3 class="tracking-widest text-gray-400 text-xs font-medium title-font">CONFERENCE</h3>
|
||||
<h2 class="text-lg text-white font-medium title-font mb-4">nevim</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="xl:w-1/4 md:w-1/2 w-full p-4">
|
||||
<div class="bg-gray-800 bg-opacity-40 p-6">
|
||||
<picture>
|
||||
<source srcSet="/venues/cc5.avif" type="image/avif" />
|
||||
<source srcSet="/venues/cc5.jpg" type="image/jpeg" />
|
||||
<img
|
||||
decoding="async"
|
||||
loading="lazy"
|
||||
class="h-40 w-full object-cover object-center mb-6 grayscale hover:grayscale-0"
|
||||
src="/venues/cc5.jpg"
|
||||
alt="venue"
|
||||
/>
|
||||
</picture>
|
||||
<h3 class="tracking-widest text-gray-400 text-xs font-medium title-font">WORKING</h3>
|
||||
<h2 class="text-lg text-white font-medium title-font mb-4">něco</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
Za Šířka: | Výška: | Velikost: 57 KiB |
Za Šířka: | Výška: | Velikost: 56 KiB |
|
@ -0,0 +1,16 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<filter id="duotone_peachypink">
|
||||
<feColorMatrix type="matrix" result="grayscale"
|
||||
values="1 0 0 0 0
|
||||
1 0 0 0 0
|
||||
1 0 0 0 0
|
||||
0 0 0 1 0" >
|
||||
</feColorMatrix>
|
||||
<feComponentTransfer color-interpolation-filters="sRGB" result="duotone">
|
||||
<feFuncR type="table" tableValues="0.7411764706 0.9882352941"></feFuncR>
|
||||
<feFuncG type="table" tableValues="0.0431372549 0.7333333333"></feFuncG>
|
||||
<feFuncB type="table" tableValues="0.568627451 0.05098039216"></feFuncB>
|
||||
<feFuncA type="table" tableValues="0 1"></feFuncA>
|
||||
</feComponentTransfer>
|
||||
</filter>
|
||||
</svg>
|
Za Šířka: | Výška: | Velikost: 704 B |
Za Šířka: | Výška: | Velikost: 4.3 KiB |
Za Šířka: | Výška: | Velikost: 15 KiB |
Za Šířka: | Výška: | Velikost: 3.8 KiB |
Za Šířka: | Výška: | Velikost: 337 B |
Za Šířka: | Výška: | Velikost: 598 B |
Za Šířka: | Výška: | Velikost: 15 KiB |
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"name": "ETH Brno volume 2",
|
||||
"short_name": "ETHBrno",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/icons/android-chrome-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "/icons/android-chrome-512x512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"theme_color": "#000",
|
||||
"background_color": "#000",
|
||||
"display": "standalone"
|
||||
}
|
Za Šířka: | Výška: | Velikost: 20 KiB |
Za Šířka: | Výška: | Velikost: 12 KiB |
Za Šířka: | Výška: | Velikost: 6.4 KiB |
Za Šířka: | Výška: | Velikost: 118 KiB |
Za Šířka: | Výška: | Velikost: 4.9 KiB |
|
@ -0,0 +1,7 @@
|
|||
<svg width="516" height="401" viewBox="0 0 516 401" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="85.7948" cy="85.7948" r="70.5424" stroke="white" stroke-width="30.5048"/>
|
||||
<path d="M183.029 304.914V280.114H100.138V239.116H210.458V213.534H68.6355V280.114V304.914V376.187H210.793V350.828H100.138V304.914H183.029Z" fill="white"/>
|
||||
<path d="M377.581 239.116V213.534L244.544 213.534V239.116L295.92 239.116V377.186H327.423V239.116H377.581Z" fill="white"/>
|
||||
<path d="M516 378.867V216.215H484.944V282.907H438.919V216.215H407.751V378.867H438.919V308.377H484.944V378.867H516Z" fill="white"/>
|
||||
<rect x="68.6355" y="152.524" width="30.5048" height="247.852" fill="white"/>
|
||||
</svg>
|
Za Šířka: | Výška: | Velikost: 679 B |
Za Šířka: | Výška: | Velikost: 84 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-user"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"></path><circle cx="12" cy="7" r="4"></circle></svg>
|
Za Šířka: | Výška: | Velikost: 313 B |
Za Šířka: | Výška: | Velikost: 487 KiB |
Za Šířka: | Výška: | Velikost: 772 KiB |
Za Šířka: | Výška: | Velikost: 530 KiB |
Za Šířka: | Výška: | Velikost: 628 KiB |
Za Šířka: | Výška: | Velikost: 161 KiB |
Za Šířka: | Výška: | Velikost: 287 KiB |
Za Šířka: | Výška: | Velikost: 157 KiB |
Za Šířka: | Výška: | Velikost: 102 KiB |
Za Šířka: | Výška: | Velikost: 101 KiB |
Za Šířka: | Výška: | Velikost: 125 KiB |
Za Šířka: | Výška: | Velikost: 107 KiB |
|
@ -0,0 +1,16 @@
|
|||
import adapter from '@sveltejs/adapter-auto';
|
||||
import preprocess from "svelte-preprocess";
|
||||
|
||||
/** @type {import('@sveltejs/kit').Config} */
|
||||
const config = {
|
||||
kit: {
|
||||
adapter: adapter()
|
||||
},
|
||||
preprocess: [
|
||||
preprocess({
|
||||
postcss: true,
|
||||
}),
|
||||
],
|
||||
};
|
||||
|
||||
export default config;
|
|
@ -0,0 +1,8 @@
|
|||
/** @type {import('tailwindcss').Config} */
|
||||
module.exports = {
|
||||
content: ['./src/**/*.{html,js,svelte,ts}'],
|
||||
theme: {
|
||||
extend: {},
|
||||
},
|
||||
plugins: [],
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
import { expect, test } from '@playwright/test';
|
||||
|
||||
test('index page has expected h1', async ({ page }) => {
|
||||
await page.goto('/');
|
||||
expect(await page.textContent('h1')).toBe('Welcome to SvelteKit');
|
||||
});
|
|
@ -0,0 +1,7 @@
|
|||
import { sveltekit } from '@sveltejs/kit/vite';
|
||||
|
||||
const config = {
|
||||
plugins: [sveltekit()]
|
||||
};
|
||||
|
||||
export default config;
|