diff --git a/_app/immutable/assets/_layout-59390a36.css b/_app/immutable/assets/_layout-90b2abc7.css similarity index 99% rename from _app/immutable/assets/_layout-59390a36.css rename to _app/immutable/assets/_layout-90b2abc7.css index f168112..669d9f8 100644 --- a/_app/immutable/assets/_layout-59390a36.css +++ b/_app/immutable/assets/_layout-90b2abc7.css @@ -607,7 +607,7 @@ table.table-custom{ color: rgb(255 255 255 / 0.7); } -.person-item:hover .table-custom th{ +.person-item:hover .table-custom th, .topic-item:hover .table-custom th{ --tw-text-opacity: 1; color: rgb(0 0 0 / var(--tw-text-opacity)); } @@ -654,7 +654,7 @@ table.table-custom{ filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); } -.person-item:hover .text-mild, .person-item:hover .text-supermild{ +.person-item:hover .text-mild, .person-item:hover .text-supermild, .topic-item:hover .text-mild{ --tw-text-opacity: 1; color: rgb(0 0 0 / var(--tw-text-opacity)); } diff --git a/_app/immutable/chunks/0-d0a6196e.js b/_app/immutable/chunks/0-590d6e0c.js similarity index 87% rename from _app/immutable/chunks/0-d0a6196e.js rename to _app/immutable/chunks/0-590d6e0c.js index e3d6999..7ec7202 100644 --- a/_app/immutable/chunks/0-d0a6196e.js +++ b/_app/immutable/chunks/0-590d6e0c.js @@ -1,5 +1,5 @@ import { _ } from "./_layout-68f6d432.js"; -import { default as default2 } from "../components/pages/_layout.svelte-2f842b9f.js"; +import { default as default2 } from "../components/pages/_layout.svelte-b01be7cb.js"; export { default2 as component, _ as universal diff --git a/_app/immutable/chunks/2-c0e96414.js b/_app/immutable/chunks/2-1c881355.js similarity index 83% rename from _app/immutable/chunks/2-c0e96414.js rename to _app/immutable/chunks/2-1c881355.js index 30cef29..8dd17bf 100644 --- a/_app/immutable/chunks/2-c0e96414.js +++ b/_app/immutable/chunks/2-1c881355.js @@ -1,4 +1,4 @@ -import { default as default2 } from "../components/pages/_page.svelte-faad47a7.js"; +import { default as default2 } from "../components/pages/_page.svelte-3b0d8dc2.js"; export { default2 as component }; diff --git a/_app/immutable/components/pages/_layout.svelte-2f842b9f.js b/_app/immutable/components/pages/_layout.svelte-b01be7cb.js similarity index 100% rename from _app/immutable/components/pages/_layout.svelte-2f842b9f.js rename to _app/immutable/components/pages/_layout.svelte-b01be7cb.js diff --git a/_app/immutable/components/pages/_page.svelte-faad47a7.js b/_app/immutable/components/pages/_page.svelte-3b0d8dc2.js similarity index 96% rename from _app/immutable/components/pages/_page.svelte-faad47a7.js rename to _app/immutable/components/pages/_page.svelte-3b0d8dc2.js index c1a00f9..d269d66 100644 --- a/_app/immutable/components/pages/_page.svelte-faad47a7.js +++ b/_app/immutable/components/pages/_page.svelte-3b0d8dc2.js @@ -156,13 +156,13 @@ function create_each_block$1(ctx) { ctx[5].twitter )); attr(a0, "target", "_blank"); - attr(div1, "class", "mt-4 speaker-name animate-speaker"); + attr(div1, "class", "mt-4 speaker-name animate-speaker text-xl"); attr(a1, "href", a1_href_value = twitterLink( /*item*/ ctx[5].twitter )); attr(a1, "class", "hover:underline animate-speaker"); - attr(div2, "class", "text-base text-mild"); + attr(div2, "class", "text-lg text-mild"); attr(div3, "class", div3_class_value = "hover:bg-white hover:text-black p-2 " + /*size*/ (ctx[1] === "small" ? "w-2/3 sm:w-48" : "w-2/3 sm:w-64") + " person-item"); }, @@ -461,9 +461,9 @@ function create_each_block_4(ctx) { this.h(); }, h() { - attr(div0, "class", "text-2xl animate-topic"); - attr(div1, "class", "mt-4 text-lg markdown"); - attr(div2, "class", "bg-[#0d1117] hover:text-black hover:bg-white px-4 py-6"); + attr(div0, "class", "text-2xl animate-section"); + attr(div1, "class", "mt-4 text-lg text-mild markdown"); + attr(div2, "class", "bg-[#0d1117] hover:text-black hover:bg-white px-4 py-6 topic-item"); }, m(target, anchor) { insert_hydration(target, div2, anchor); @@ -478,8 +478,8 @@ function create_each_block_4(ctx) { dispose = listen( div2, "mouseenter", - /*animateTopic*/ - ctx[1] + /*animateSection*/ + ctx[1](35) ); mounted = true; } @@ -580,6 +580,7 @@ function create_each_block_3(ctx) { let t0; let td1; let div; + let span; let t1_value = ( /*pi*/ ctx[11].title + "" @@ -595,6 +596,8 @@ function create_each_block_3(ctx) { let t4; let t5; let current; + let mounted; + let dispose; let if_block = ( /*pi*/ ctx[11].desc && create_if_block_2(ctx) @@ -606,6 +609,7 @@ function create_each_block_3(ctx) { t0 = space(); td1 = element("td"); div = element("div"); + span = element("span"); t1 = text(t1_value); t2 = space(); t3 = text(t3_value); @@ -626,7 +630,10 @@ function create_each_block_3(ctx) { var td1_nodes = children(td1); div = claim_element(td1_nodes, "DIV", { class: true }); var div_nodes = children(div); - t1 = claim_text(div_nodes, t1_value); + span = claim_element(div_nodes, "SPAN", { class: true }); + var span_nodes = children(span); + t1 = claim_text(span_nodes, t1_value); + span_nodes.forEach(detach); t2 = claim_space(div_nodes); t3 = claim_text(div_nodes, t3_value); div_nodes.forEach(detach); @@ -640,6 +647,7 @@ function create_each_block_3(ctx) { }, h() { attr(td0, "class", "text-right time xl:whitespace-nowrap sm:w-16 xl:w-36"); + attr(span, "class", "animate-section"); attr(div, "class", "text-xl"); attr(td1, "class", "text-left"); attr(tr, "class", ""); @@ -651,7 +659,8 @@ function create_each_block_3(ctx) { append_hydration(tr, t0); append_hydration(tr, td1); append_hydration(td1, div); - append_hydration(div, t1); + append_hydration(div, span); + append_hydration(span, t1); append_hydration(div, t2); append_hydration(div, t3); append_hydration(td1, t4); @@ -659,6 +668,15 @@ function create_each_block_3(ctx) { if_block.m(td1, null); append_hydration(tr, t5); current = true; + if (!mounted) { + dispose = listen( + tr, + "mouseenter", + /*animateSection*/ + ctx[1](35) + ); + mounted = true; + } }, p(ctx2, dirty) { var _a2; @@ -714,6 +732,8 @@ function create_each_block_3(ctx) { detach(tr); if (if_block) if_block.d(); + mounted = false; + dispose(); } }; } @@ -865,6 +885,8 @@ function create_each_block_1(ctx) { let t5; let t6; let current; + let mounted; + let dispose; let each_value_2 = ( /*tt*/ ctx[5].includes @@ -933,8 +955,8 @@ function create_each_block_1(ctx) { this.h(); }, h() { - attr(div0, "class", "text-3xl uppercase"); - attr(div1, "class", "text-xl mt-6 font-bold"); + attr(div0, "class", "text-3xl uppercase animate-section"); + attr(div1, "class", "text-xl mt-6 font-bold animate-section"); attr(ul, "class", "mt-6 text-lg text-left list-disc px-6"); attr(div2, "class", "bg-[#0d1117] hover:border-0 py-10 px-10 hover:text-black hover:bg-white"); }, @@ -958,6 +980,15 @@ function create_each_block_1(ctx) { if_block1.m(div2, null); append_hydration(div2, t6); current = true; + if (!mounted) { + dispose = listen( + div2, + "mouseenter", + /*animateSection*/ + ctx[1](40) + ); + mounted = true; + } }, p(ctx2, dirty) { if ((!current || dirty & /*data*/ @@ -1045,6 +1076,8 @@ function create_each_block_1(ctx) { if_block0.d(); if (if_block1) if_block1.d(); + mounted = false; + dispose(); } }; } @@ -1061,6 +1094,8 @@ function create_each_block(ctx) { let sveltemarkdown; let t2; let current; + let mounted; + let dispose; sveltemarkdown = new SvelteMarkdown({ props: { source: ( /*fi*/ ctx[2].text @@ -1093,7 +1128,7 @@ function create_each_block(ctx) { this.h(); }, h() { - attr(div0, "class", "text-2xl font-bold mb-6"); + attr(div0, "class", "text-2xl font-bold mb-6 animate-section"); attr(div1, "class", "text-lg markdown"); attr(div2, "class", "py-10 px-4 hover:bg-white hover:text-black"); }, @@ -1106,6 +1141,15 @@ function create_each_block(ctx) { mount_component(sveltemarkdown, div1, null); append_hydration(div2, t2); current = true; + if (!mounted) { + dispose = listen( + div2, + "mouseenter", + /*animateSection*/ + ctx[1](15) + ); + mounted = true; + } }, p(ctx2, dirty) { if ((!current || dirty & /*data*/ @@ -1133,6 +1177,8 @@ function create_each_block(ctx) { if (detaching) detach(div2); destroy_component(sveltemarkdown); + mounted = false; + dispose(); } }; } @@ -1233,6 +1279,8 @@ function create_fragment(ctx) { let t30; let div29; let current; + let mounted; + let dispose; document.title = title_value = /*data*/ ctx[0].config.title + " | " + /*data*/ ctx[0].config.date; @@ -1742,6 +1790,10 @@ function create_fragment(ctx) { each_blocks[i].m(div29, null); } current = true; + if (!mounted) { + dispose = listen(button, "mouseenter", animateText); + mounted = true; + } }, p(ctx2, [dirty]) { if ((!current || dirty & /*data*/ @@ -1782,7 +1834,7 @@ function create_fragment(ctx) { sveltemarkdown_changes.source = /*data*/ ctx2[0].config.intro; sveltemarkdown.$set(sveltemarkdown_changes); - if (dirty & /*animateTopic, data*/ + if (dirty & /*animateSection, data*/ 3) { each_value_4 = /*data*/ ctx2[0].config.themes; @@ -1825,8 +1877,8 @@ function create_fragment(ctx) { peoplelist1_changes.people = /*data*/ ctx2[0].config.people; peoplelist1.$set(peoplelist1_changes); - if (dirty & /*data*/ - 1) { + if (dirty & /*animateSection, data*/ + 3) { each_value_3 = /*data*/ ctx2[0].config.program; let i; @@ -1857,8 +1909,8 @@ function create_fragment(ctx) { 1) && t24_value !== (t24_value = /*data*/ ctx2[0].config.ticketsIntro + "")) set_data(t24, t24_value); - if (dirty & /*data*/ - 1) { + if (dirty & /*animateSection, data*/ + 3) { each_value_1 = /*data*/ ctx2[0].config.tickets; let i; @@ -1884,8 +1936,8 @@ function create_fragment(ctx) { 1) && t27_value !== (t27_value = /*data*/ ctx2[0].config.ticketsNote + "")) set_data(t27, t27_value); - if (dirty & /*data*/ - 1) { + if (dirty & /*animateSection, data*/ + 3) { each_value = /*data*/ ctx2[0].config.faq; let i; @@ -1992,22 +2044,26 @@ function create_fragment(ctx) { if (detaching) detach(div31); destroy_each(each_blocks, detaching); + mounted = false; + dispose(); } }; } const func = (x) => x; function instance($$self, $$props, $$invalidate) { let { data } = $$props; - function animateTopic(el) { - for (const e of el.target.getElementsByClassName("animate-topic")) { - animateText({ target: e }); - } + function animateSection(interval = 50) { + return (el) => { + for (const e of el.target.getElementsByClassName("animate-section")) { + animateText({ target: e }, interval); + } + }; } $$self.$$set = ($$props2) => { if ("data" in $$props2) $$invalidate(0, data = $$props2.data); }; - return [data, animateTopic]; + return [data, animateSection]; } class Page extends SvelteComponent { constructor(options) { diff --git a/_app/immutable/start-cbc8d0d8.js b/_app/immutable/start-a0a7a3db.js similarity index 99% rename from _app/immutable/start-cbc8d0d8.js rename to _app/immutable/start-a0a7a3db.js index 7502e91..617e2a6 100644 --- a/_app/immutable/start-cbc8d0d8.js +++ b/_app/immutable/start-a0a7a3db.js @@ -900,9 +900,9 @@ const __vitePreload = function preload(baseModule, deps, importerUrl) { }; const matchers = {}; const nodes = [ - () => __vitePreload(() => import("./chunks/0-d0a6196e.js"), true ? ["./chunks/0-d0a6196e.js","./chunks/_layout-68f6d432.js","./components/pages/_layout.svelte-2f842b9f.js","./chunks/index-858fda85.js","./chunks/helpers-a9b07fa3.js","./assets/_layout-59390a36.css"] : void 0, import.meta.url), + () => __vitePreload(() => import("./chunks/0-590d6e0c.js"), true ? ["./chunks/0-590d6e0c.js","./chunks/_layout-68f6d432.js","./components/pages/_layout.svelte-b01be7cb.js","./chunks/index-858fda85.js","./chunks/helpers-a9b07fa3.js","./assets/_layout-90b2abc7.css"] : void 0, import.meta.url), () => __vitePreload(() => import("./chunks/1-a708a445.js"), true ? ["./chunks/1-a708a445.js","./components/error.svelte-b9497535.js","./chunks/index-858fda85.js","./chunks/singletons-1811cedd.js"] : void 0, import.meta.url), - () => __vitePreload(() => import("./chunks/2-c0e96414.js"), true ? ["./chunks/2-c0e96414.js","./components/pages/_page.svelte-faad47a7.js","./chunks/index-858fda85.js","./chunks/helpers-a9b07fa3.js"] : void 0, import.meta.url) + () => __vitePreload(() => import("./chunks/2-1c881355.js"), true ? ["./chunks/2-1c881355.js","./components/pages/_page.svelte-3b0d8dc2.js","./chunks/index-858fda85.js","./chunks/helpers-a9b07fa3.js"] : void 0, import.meta.url) ]; const server_loads = []; const dictionary = { diff --git a/_app/version.json b/_app/version.json index a6bfe95..a68b580 100644 --- a/_app/version.json +++ b/_app/version.json @@ -1 +1 @@ -{"version":"1676578882700"} \ No newline at end of file +{"version":"1676580084670"} \ No newline at end of file diff --git a/index.html b/index.html index 1940c46..967af6b 100644 --- a/index.html +++ b/index.html @@ -6,15 +6,15 @@ - - + + - + - Web3Privacy Prague 2023 | 5. June 2023 + Web3Privacy Prague 2023 | 5. June 2023
@@ -35,57 +35,57 @@

We need to protect our privacy, and that's why we're coming together on June 5 to Prague to sit down and discuss different aspects of privacy in the Web3 industry - how we can help shape it and make it more accessible - building a shared culture. The conference complements the research project Web3Privacy Now and was created by joining forces with the production team of the privacy hackathon ETHBrno.

Key themes
-
HUMAN RIGHTS DAOS (PRO-PRIVACY)
-
-
IDENTITY (ID)
-
-
MIXNETS → FULL-STACK PRIVACY
-

Imagine a Full-Stack Privacy -> how would it even look alike!

-
PRIVATE MESSAGING PROTOCOLS
-

We need resilient privacy-preserving, p2p communication layers for Web3, that allows free and uncensored human-to-human, machine-to-machine or hybrid communication.

-
SOLARPUNK VS LUNARPUNK
-

For solarpunk to succeed it must integrate the lunarpunk unconscious. The only hope for solarpunk is to go dark. Do you agree?

-
CRYPTOGRAPHY
-
-
TECH JOURNALISTS
-

Ethical crypto vs global cyberwars agenda

-
PRIVACY WARS
-

Why are privacy-blockchain socials so toxic? We should stop hating each other & work together

-
PRIVACY WORKFORCE
-
-
PRIVACY ACTIVIST'S
-
-
R&D (ZK, MPC)
-
-
NETWORK STATES (WITH A PRIVACY FOCUS)
-

The network state-as-a-grassroots movement

-
VEKSL
-

Easy onboarding to cryptocurrencies without KYC/AML using peer-to-peer tools is crucial for privacy. What options do we have today?

+
HUMAN RIGHTS DAOS (PRO-PRIVACY)
+
+
IDENTITY (ID)
+
+
MIXNETS → FULL-STACK PRIVACY
+

Imagine a Full-Stack Privacy -> how would it even look alike!

+
PRIVATE MESSAGING PROTOCOLS
+

We need resilient privacy-preserving, p2p communication layers for Web3, that allows free and uncensored human-to-human, machine-to-machine or hybrid communication.

+
SOLARPUNK VS LUNARPUNK
+

For solarpunk to succeed it must integrate the lunarpunk unconscious. The only hope for solarpunk is to go dark. Do you agree?

+
CRYPTOGRAPHY
+
+
TECH JOURNALISTS
+

Ethical crypto vs global cyberwars agenda

+
PRIVACY WARS
+

Why are privacy-blockchain socials so toxic? We should stop hating each other & work together

+
PRIVACY WORKFORCE
+
+
PRIVACY ACTIVIST'S
+
+
R&D (ZK, MPC)
+
+
NETWORK STATES (WITH A PRIVACY FOCUS)
+

The network state-as-a-grassroots movement

+
VEKSL
+

Easy onboarding to cryptocurrencies without KYC/AML using peer-to-peer tools is crucial for privacy. What options do we have today?

Speakers
-
GUY ZYSKIND
- +
GUY ZYSKIND
+

Founder of Secret Network, CEO SCRT Labs

-
JURAJ BEDNAR
- +
JURAJ BEDNAR
+

Educator, writer, cryptoanarchist & biohacker

-
MARIO HAVEL
- +
MARIO HAVEL
+

Hacker, Co-Founder of Bordel Hackerspace

Hosts
-
MYKOLA SIUSKO
- +
MYKOLA SIUSKO
+

Web3 privacy advocate

-
TREE
- +
TREE
+

Creator of lunarpunk hackathons & events

@@ -93,41 +93,41 @@ - - - - - - - - - - - -
time topic
9:00 9:30
Registration & networking
+
Registration & networking
9:30 9:35
Welcome to Web3Privacy ― TBA
+
Welcome to Web3Privacy ― TBA

Welcoming visitors to our private-centric research, community and conference

9:35 10:55
Talks I.
+
Talks I.
10:55 11:20
25min Coffee Break
+
25min Coffee Break
11:25 12:40
Talks II.
+
Talks II.
12:40 14:00
Lunch & Networking
+
Lunch & Networking
14:00 15:40
Talks III.
+
Talks III.
15:40 16:05
25min Coffee Break
+
25min Coffee Break
16:10 18:30
Talks IV.
+
Talks IV.
18:30 18:35
Closing Remarks ― TBA
+
Closing Remarks ― TBA
18:30 20:00
Networking & Drinks
+
Networking & Drinks
20:00 4:00
#Lunarpunk party
+
#Lunarpunk party

Enjoy our afterparty in Lunarpunk style with quality Prague rave DJs, which will take place in the same venue until the morning (4am).

@@ -137,14 +137,14 @@
Ticket
Be a part of the first Web3Privacy Summit experience…
-
All-day Access
-
2350 CZK (~99 EUR)
+
All-day Access
+
2350 CZK (~99 EUR)
  • All talks & panels
  • Coffee breaks
  • Buffet lunch
  • Networking drinks with speakers & attendees

Apply for a discount →
(as independent developer, student, privacy advocate, open-source contributor..)

-
#Lunarpunk Party
-
350 CZK (~15 EUR)
+
#Lunarpunk Party
+
350 CZK (~15 EUR)
  • 8pm - morning
  • Prague rave from top DJs
  • VJs and projections
  • Networking with attendees, speakers & sponsors
*Party access is included in the All-day Pass
@@ -153,21 +153,21 @@
Tickets will go on sale in early March 2023.
FAQ
-
What is Web3Privacy Now?
+
What is 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.

-
What is Prague Blockchain Week?
+
What is Prague Blockchain Week?

Prague Blockchain Week 2023 (#PBW23) is a decentralized gathering of all people interested in cryptocurrencies and related topics. It consists of many independent events across Jun 2 - 11, including conferences, hackathons, workshops, community meetups, as well as various parties and happy hours.

-
Who is the event for?
+
Who is the event for?

Our event is for anyone interested in privacy topics in the Web3 industry. There will be space for about 300 enthusiasts.

-
Will the talks be livestreamed and/or recorded?
+
Will the talks be livestreamed and/or recorded?

Yes, we plan do both. Livestream of the whole conference and recordings of the lectures will be publicly available.

-
When will tickets go on sale? What will be the payment options?
+
When will tickets go on sale? What will be the payment options?

Tickets will go on sale in early March 2023. Payment will be possible via credit card, Bitcoin (on-chain), Lightning Network or possibly other cryptocurrencies.

-
All-day access ticket is expensive for me. Do you offer any discounts?
+
All-day access ticket is expensive for me. Do you offer any discounts?

Yes, we do! We offer discounts (up to 75%) for independent developers, students and especially active privacy advocates or open-source contributors to private protocols or tools. If you are interested in a discount, please fill out this form.

-
Why event isn't admission free?
+
Why event isn't admission free?

We would like to have most of the cost of the event covered by admission fees directly from visitors. We want to be independent of sponsors and reduce the pressure to make it a "sales" or marketing event.

-
How do I get to the venue?
+
How do I get to the venue?

Venue X10 (full name "Divadlo X10") is located in the centre of Prague near the metro station Národní Třída (Line B) and Můstek (Line A,C). The address is Charvátova 10/39, Prague 1, 110 00 (Google Maps).

@@ -178,14 +178,14 @@

This web is built with SvelteKit and is open-source under CC0 license

-