From 7d1a6089515fb6a771c3864312995b082e7b53e4 Mon Sep 17 00:00:00 2001 From: "kam (from the studio)" Date: Tue, 14 Dec 2021 21:40:23 +0100 Subject: [PATCH] function --- .DS_Store | Bin 0 -> 6148 bytes about.html | 5 +-- descriptions.json | 56 +++++++++++++++++++++++++++++ function.html | 68 +++++++++++++++++++++++++++++++++++ index.html => home.html | 0 manifesto.html | 5 +-- static/.DS_Store | Bin 6148 -> 6148 bytes static/css/function.css | 42 ++++++++++++++++++++++ static/css/global.css | 50 +++++++++++++++++--------- static/css/home.css | 1 + static/css/list.css | 2 +- static/font/Necto-Mono.woff | Bin 0 -> 31348 bytes static/font/Necto-Mono.woff2 | Bin 0 -> 25288 bytes static/font/font.css | 8 +++++ static/js/homeSticker.js | 3 +- static/js/spawnSticker.js | 32 ++++++++++++++--- 16 files changed, 244 insertions(+), 28 deletions(-) create mode 100644 .DS_Store create mode 100644 descriptions.json create mode 100644 function.html rename index.html => home.html (100%) create mode 100644 static/css/function.css create mode 100644 static/font/Necto-Mono.woff create mode 100644 static/font/Necto-Mono.woff2 diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..7fdf1d4c0ccf2c50b2147de516faa1f5a796d335 GIT binary patch literal 6148 zcmeHK!AiqG5Z!HSO%SmMLA~w8TMw<(_9TQ@58i}`9#q=I78|HZX;Op6NWMe=$RF@` zoY~zLLiON9q|CtVo1LB6WnaS1E@O<_vq6)w8e_}=MJ$=nd?PrHx+Ep-LF94{pWS&$ zH1Wovw-il||HuG-yDE!V%v{jo_xtcBV?T-;jZa=GSJtZQhG`n+rg`g(!o-Q)coy02 z^cs8TZang|eG!J^h3$Hm{xIp)wok$!cKu*DmC62K2q8CDelQ3VJDdfBNY3M^0l84G zwwI=@gI2pPj@q59F49h?Q5T1;c9xmO&VKXwtpD)zoW5kQZ;DzDf1#8ujdOShqp-_I zXBv#d;2!+*oOvuEF+dCu1FO$~KKYD|)!!=ZkQg8ae#roy4+0d?(wHlhM+Y=`eZ=t! zA_~~}mOvC5EseQC7y;ob6;P#e{lwrZ9sEMaSsHVNDxGn;GR&h_=K6)g
+
diff --git a/descriptions.json b/descriptions.json new file mode 100644 index 0000000..9007acd --- /dev/null +++ b/descriptions.json @@ -0,0 +1,56 @@ +{ + "vlcsnap-2021-10-25-10h54m02s729.png": { + "description": "A lot of onigiry" + }, + "img.png": { + "description": "" + }, + "Conformal_grid_before_Mobius_transformation.svg.png": { + "description": "" + }, + "etre.png": { + "description": "" + }, + "pp.png": { + "description": "" + }, + "download.png": { + "description": "" + }, + "one_to_one_translation.jpg": { + "description": "* istruzioni per l'uso per traduzione_poesia_italiano_inglese\r\nBenvenuto in traduzione_poesia (1)!\r\n\r\nVorrei che traducessi questa poesia in inglese. Puoi utilizzare un traduttore per ottenere la traduzione di singole parole, ma spero che farai del tuo meglio per fare una scelta ponderata sulla parola che utilizzerai. Ogni parola ha il suo potere!\r\n\r\nQuesta raccolta di traduzioni far\u00e0 parte del materiale che mi servir\u00e0 per utilizzare la mia funzione mashup(), che pu\u00f2 essere utilizzata solo con testi con lo stesso numero di righe. Pertanto, ti chiedo gentilmente di creare gli spazi accanto al testo, in ordine, e creando uno spazio per riga. In questo modo il contenuto estratto sar\u00e0 pronto per essere elaborato.\r\n\r\nIn pratica:\r\n\r\n .a Fai clic e trascina per creare lo spazio in cui inserire la traduzione (riga per riga, in ordine, uno spazio per riga)\r\n .b Fai clic su '' inserisci '' o fai clic sulla '' x '' se non \u00e8 come volevi\r\n\r\nGrazie per la partecipazione!\r\nTorna presto sul nostro sito per vedere come \u00e8 stato utilizzato il tuo contributo :)" + }, + "free_fun_translation.jpg": { + "description": "*usage instructions for vernacular translation experiment\r\n\r\n''there is NOT a single way, a most correct way, or a best way to translate a poem.'' \r\n\r\nFollowing this quote, I would like you to translate this poem to the language you prefer/feel more comfortable with/your mother tongue. You can use a translator to obtain the translation of single words, but i hope you will do \r\n\r\nyour best to make a thoughtful choice on the word you will choose. Every word has its own power!\r\n\r\nInteract with this text as you prefer and translate it in the way you feel, word by word, using negative space, writing on the text, off the text, following the lines or not? \r\n\r\n .a Click and drag to create the space(s) where you want to insert your translation\r\n .b Click ''insert'' or click on the ''x'' if it's not as you wanted\r\n\r\nThank you! Come back to our website to see how your contribution has been used :)" + }, + "korean.jpg": { + "description": "\r\nWelcome to many to one translation!\r\n\r\nI would like you to translate this poem to english. You can use a translator to obtain the translation of single words, but i hope you will do your best to make a thoughtful choice on the word you will choose. Every word has its own power!\r\n\r\nThis collection of translations will be part of the material I will use to experiment with my mashup() function, that can be used only with texts with the same number of lines. Therefore, I kindly ask you to create a big box next to the text and then insert your translation in the box, in order, line by line. This is so that the content extracted will be ready to be processed!\r\n\r\nIn practice:\r\n\r\n.a Click and drag to create the space where to insert your translation (line by line, in order)\r\n.b Click ''insert'' or click on the ''x'' if it's not as you want\r\nc. Come back on our website soon to see how your contribution has been used.\r\n\r\nThank you for your participation!\r\n:)\r\n" + }, + "bulgarian.jpg": { + "description": "Welcome to many to one translation!\r\n\r\nI would like you to translate this poem to english. You can use a translator to obtain the translation of single words, but i hope you will do your best to make a thoughtful choice on the word you will choose. Every word has its own power!\r\n\r\nThis collection of translations will be part of the material I will use to experiment with my mashup() function, that can be used only with texts with the same number of lines. Therefore, I kindly ask you to create the spaces next to the text, in order, and one space per line. This is so that the content extracted will be ready to be processed.\r\n\r\n .b Click and drag to create the space where you want to insert your translation (line by line, in order, one space per line)\r\n .c Click ''insert'' or click on the ''x'' if it's not as you want\r\n\r\nThank you for your participation!\r\nGet back on our website soon to see how your contribution has been used." + }, + "dutch.jpg": { + "description": "Welcome to many to one translation!\r\n\r\nI would like you to translate this poem to english. You can use a translator to obtain the translation of single words, but i hope you will do your best to make a thoughtful choice on the word you will choose. Every word has its own power!\r\n\r\nThis collection of translations will be part of the material I will use to experiment with my mashup() function, that can be used only with texts with the same number of lines. Therefore, I kindly ask you to create the spaces next to the text, in order, and one space per line. This is so that the content extracted will be ready to be processed.\r\n\r\n .b Click and drag to create the space where you want to insert your translation (line by line, in order, one space per line)\r\n .c Click ''insert'' or click on the ''x'' if it's not as you want\r\n\r\nThank you for your participation!\r\nGet back on our website soon to see how your contribution has been used." + }, + "french.jpg": { + "description": "Welcome to many to one translation!\r\n\r\nI would like you to translate this poem to english. You can use a translator to obtain the translation of single words, but i hope you will do your best to make a thoughtful choice on the word you will choose. Every word has its own power!\r\n\r\nThis collection of translations will be part of the material I will use to experiment with my mashup() function, that can be used only with texts with the same number of lines. Therefore, I kindly ask you to create the spaces next to the text, in order, and one space per line. This is so that the content extracted will be ready to be processed.\r\n\r\n .b Click and drag to create the space where you want to insert your translation (line by line, in order, one space per line)\r\n .c Click ''insert'' or click on the ''x'' if it's not as you want\r\n\r\nThank you for your participation!\r\nGet back on our website soon to see how your contribution has been used." + }, + "greek.jpg": { + "description": "Welcome to many to one translation!\r\n\r\nI would like you to translate this poem to english. You can use a translator to obtain the translation of single words, but i hope you will do your best to make a thoughtful choice on the word you will choose. Every word has its own power!\r\n\r\nThis collection of translations will be part of the material I will use to experiment with my mashup() function, that can be used only with texts with the same number of lines. Therefore, I kindly ask you to create the spaces next to the text, in order, and one space per line. This is so that the content extracted will be ready to be processed.\r\n\r\n .b Click and drag to create the space where you want to insert your translation (line by line, in order, one space per line)\r\n .c Click ''insert'' or click on the ''x'' if it's not as you want\r\n\r\nThank you for your participation!\r\nGet back on our website soon to see how your contribution has been used." + }, + "german.jpg": { + "description": "Welcome to many to one translation!\r\n\r\nI would like you to translate this poem to english. You can use a translator to obtain the translation of single words, but i hope you will do your best to make a thoughtful choice on the word you will choose. Every word has its own power!\r\n\r\nThis collection of translations will be part of the material I will use to experiment with my mashup() function, that can be used only with texts with the same number of lines. Therefore, I kindly ask you to create the spaces next to the text, in order, and one space per line. This is so that the content extracted will be ready to be processed.\r\n\r\n .b Click and drag to create the space where you want to insert your translation (line by line, in order, one space per line)\r\n .c Click ''insert'' or click on the ''x'' if it's not as you want\r\n\r\nThank you for your participation!\r\nGet back on our website soon to see how your contribution has been used." + }, + "italian.jpg": { + "description": "Welcome to many to one translation!\r\n\r\nI would like you to translate this poem to english. You can use a translator to obtain the translation of single words, but i hope you will do your best to make a thoughtful choice on the word you will choose. Every word has its own power!\r\n\r\nThis collection of translations will be part of the material I will use to experiment with my mashup() function, that can be used only with texts with the same number of lines. Therefore, I kindly ask you to create the spaces next to the text, in order, and one space per line. This is so that the content extracted will be ready to be processed.\r\n\r\n .b Click and drag to create the space where you want to insert your translation (line by line, in order, one space per line)\r\n .c Click ''insert'' or click on the ''x'' if it's not as you want\r\n\r\nThank you for your participation!\r\nGet back on our website soon to see how your contribution has been used." + }, + "spanish.jpg": { + "description": "Welcome to many to one translation!\r\n\r\nI would like you to translate this poem to english. You can use a translator to obtain the translation of single words, but i hope you will do your best to make a thoughtful choice on the word you will choose. Every word has its own power!\r\n\r\nThis collection of translations will be part of the material I will use to experiment with my mashup() function, that can be used only with texts with the same number of lines. Therefore, I kindly ask you to create the spaces next to the text, in order, and one space per line. This is so that the content extracted will be ready to be processed.\r\n\r\n .b Click and drag to create the space where you want to insert your translation (line by line, in order, one space per line)\r\n .c Click ''insert'' or click on the ''x'' if it's not as you want\r\n\r\nThank you for your participation!\r\nGet back on our website soon to see how your contribution has been used." + }, + "thai.jpg": { + "description": "*usage instructions for many_to_one_poem_translation\r\n\r\nWelcome to many to one translation!\r\n\r\nI would like you to translate this poem to english. You can use a translator to obtain the translation of single words, but i hope you will do your best to make a thoughtful choice on the word you will choose. Every word has its own power!\r\n\r\nThis collection of translations will be part of the material I will use to experiment with my mashup() function, that can be used only with texts with the same number of lines. Therefore, I kindly ask you to create a big box next to the text and then insert your translation in the box, in order, line by line. This is so that the content extracted will be ready to be processed!\r\n\r\nIn practice:\r\n\r\n.a Click and drag to create the space where to insert your translation (line by line, in order)\r\n.b Click ''insert'' or click on the ''x'' if it's not as you want\r\nc. Come back on our website soon to see how your contribution has been used.\r\n\r\nThank you for your participation!\r\n:)\r\n" + }, + "rejection_map.jpg": { + "description": "Rejection Map\r\nA Situated Topography of Rejection\r\n\r\nYou are invited to share your experiences with rejection in the city of Rotterdam. Please be aware that your descriptions will be visible for others to read. Your contribution is voluntary and anonymous: You decide what moments and details you want to share and there is no data collected that traces back to you. As rejection is a sensitive topic, you should only share intimate things if you feel comfortable and safe. When sharing moments that involve other individuals, please be mindful that they might not want to be exposed.\r\n\r\n\r\n1. Open the link to the Annotation Compass. You can see the map of Rotterdam\r\n\r\n2. Look at the map and try to think of a moment of rejection you experienced in a certain area in Rotterdam\r\n\r\n3. Use your cursor to select this specific area of the map where you can insert your first experience. It can be a quite small area (if you want to select a building) or a bigger one (if your experience includes a whole neighborhood).\r\n\r\n4. Please choose your own way to describe your moment of rejection. It can be short or long; formal or informal; personal or distanced; poetic or pragmatic; cryptic or explicit; anecdotal or out of context; using vernacular or academic language, slang or mother tongue; using whole sentences, single words, single letters or punctuation only \u2026 Do whatever you feel most comfortable with.\r\n\r\n5. Click \u201dinsert\u201c to save your first description or \u201dx\u201c if you want to delete it.\r\n\r\n6. Follow the same steps to add more moments of rejection if you like. If several moments relate to the same space or area, they can overlap.\r\n\r\nThank you for sharing!\r\n\r\n\r\n[Map of Rotterdam \u00a9 OpenStreetMap contributors]" + } +} \ No newline at end of file diff --git a/function.html b/function.html new file mode 100644 index 0000000..fe76a03 --- /dev/null +++ b/function.html @@ -0,0 +1,68 @@ + + + + + + + SI16 - Learning how to walk while catwalking + + + + + + + + + + + +
+
+ +
+
+ Qui dolor voluptate nostrud laboris. Culpa laboris culpa velit ea. In commodo + eiusmod reprehenderit enim adipisicing. +
+
+
+

Input

+
    +
  • Text [str]
  • +
  • Volume [int]
  • +
+
+
+
+

Output

+
    +
  • Shouted Text [str]
  • +
+
+
+
+

Enpoints

+ + https://hub.xpub.nl/soupboat/si16-app/api/shout/?text=<text>&volume=<volume> + +
Example
+ https://hub.xpub.nl/soupboat/si16-app/api/shout/?text=Hello&volume=5 +
+
+
+
+ + + + diff --git a/index.html b/home.html similarity index 100% rename from index.html rename to home.html diff --git a/manifesto.html b/manifesto.html index 8222947..a95811e 100644 --- a/manifesto.html +++ b/manifesto.html @@ -17,14 +17,15 @@
+
diff --git a/static/.DS_Store b/static/.DS_Store index e54f6201d63b65553ab9003704c54e899514a151..b6194bf37ffd32d133d47d4261d928da2013298c 100644 GIT binary patch literal 6148 zcmeH~%}(1u5XWZ|L+v6&4wYzczEt9nLm-eGP$es+2X2*&%7Ip3lK@7>i(;oyo2K%m zFVQ|hU!^b5$0;+jL(~|0EhyTNcK`b^vzz@n>-7SF>W%uF01W_eF_Ah?F}ug8pVA$x zNejg(8bhDPsgAKm!&$QgEP=;Pfc9=3P9cYUKb_mZyV$ewhm98@Uhz1;mR#cep!V5hPi>Mgoy=ZtuwYO1m5li_%>vUF*;&;hleB5~UT4zO+ zWP>3GC;b7sygy8`z8?4VDC_4uPG~xKqT|Mk$)vs2?lk?KPIub$C*5wV>2J3?)2ZjK zzubJae{%Kd^W@9)>v!`Q6uza{)g*g_$lHN4(2zk2 z(EGv1L>h>eM)}o&8D9ZV9c*U9GJpJ|`qY3Lh?YjN1x=YyR1>P?ilOB0piDUS2jX8E zHQ}ImW*kRmR&qm8a`jL?yMqdh+T0Sb1m+3UO|?Pi|C@i`|L22j%@VK#7K(s!_QJg$ zE=kVTJBy>U*2i>$iH!V8qa1>n9LHRsqxd-{Hth4MfEtLFMzICWeh4rIn^^+?mB0I`- delta 309 zcmZoMXfc=|#>B)qu~2NHo}wrd0|Nsi1A_oVaY0f}eiD%PEvaB*;c~{w1|lpG%nZp4 z#SFzs<;b!*nZ+dr1~(X)m|0la*f}`4xH-A`xVdA4GxE!WOA<>;i=7gS;ss=aGgDHN z5{tq!Q%W*IQuADMQp-~F{EK`NOHwCSuz1!-gERyrmSg}GaVR?^DF7{JVBqB7j2Dos zt~NF_Hq}uuw=}KQQK&XIH_%ZqF*d8M<>cg$RCf!CD{bnVHG9d@Wy=pA0c&Gm1o{FD z1fevHItpY!{ZSTNl$VpAmktzRWSHE}-mqDLgPmn!L*Qn14t@?`pllZ8_|80;U&N6E Oq#I}=%jO7?HOv4YbW5=S diff --git a/static/css/function.css b/static/css/function.css new file mode 100644 index 0000000..f85ecdb --- /dev/null +++ b/static/css/function.css @@ -0,0 +1,42 @@ +.description { + grid-column: 1 / span 2; +} + +.function-io { + margin: 60px 0; + grid-column: 1 / -1; + display: grid; + grid-template-columns: 1fr 1fr 1fr; + place-items: start; + grid-gap: 30px; +} + +.function-io > * { + width: 100%; + height: 100%; +} + +.function-io .input, +.function-io .output { + background-color: white; + aspect-ratio: 1; + border-radius: 50%; +} + +.function-io h3 { + margin: 0; +} + +.function-io ul { + font-family: "Necto"; + list-style: none; + padding: 0; +} + +.endpoints { + grid-column: 1 / -1; +} + +.endpoints code { + background-color: white; +} diff --git a/static/css/global.css b/static/css/global.css index 02ffeda..f13c1c8 100644 --- a/static/css/global.css +++ b/static/css/global.css @@ -7,6 +7,7 @@ body { font-family: var(--font); font-size: var(--text); line-height: 1.4; + overflow-x: hidden; } h1, @@ -29,13 +30,28 @@ a { color: currentColor; } -.sticker { - text-decoration: none; +code { + font-family: "Necto"; } /* STICKER CONTAINER */ #sticker-container { + position: absolute; + left: 0; + top: 0; + bottom: 0; + right: 0; + + pointer-events: none; + + z-index: 100; + + min-height: 100vh; + height: 100%; +} + +#sticker-fix-container { position: fixed; left: 0; top: 0; @@ -44,7 +60,10 @@ a { pointer-events: none; - z-index: 1000; + z-index: 300; + + min-height: 100vh; + height: 100%; } .sticker { @@ -57,6 +76,7 @@ a { font-size: 18px; padding: 0 6px; box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.2); + text-decoration: none; } *[data-sticker] { @@ -67,7 +87,7 @@ a { .page--header { position: fixed; - z-index: 100; + z-index: 200; top: 60px; left: 50%; @@ -93,24 +113,22 @@ header { border-radius: var(--radius); background-color: var(--background); box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.25); - min-height: 64px; + height: 48px; /* comment this in page with multiple elements in the header */ + flex-basis: 48px; - padding: 0 12px; + padding: 0px 12px; } .page--header .title { + /* flex-grow: 0; */ + /* flex-shrink: 1; */ + /* line-height: 1; */ margin: 0; - /* padding: 0 12px; */ } .page--header .subtitle { - margin: 0; - margin-bottom: 6px; - /* padding: 0 12px; */ -} - -.title + .subtitle { - margin-top: -6px; + line-height: 1; + margin: 6px 0; } nav { @@ -119,8 +137,8 @@ nav { .page--header nav a { display: inline-block; - width: 64px; - height: 64px; + width: 48px; + height: 48px; border-radius: 50%; border: 1px solid currentColor; background-color: var(--background); diff --git a/static/css/home.css b/static/css/home.css index 8a0768a..fdea409 100644 --- a/static/css/home.css +++ b/static/css/home.css @@ -14,6 +14,7 @@ .negative { position: relative; visibility: hidden; + cursor: pointer; background-color: var(--background); border-radius: var(--radius); diff --git a/static/css/list.css b/static/css/list.css index 7921fb3..3297621 100644 --- a/static/css/list.css +++ b/static/css/list.css @@ -22,7 +22,7 @@ tr:last-of-type { } td { - padding: 24px 0;+++ + padding: 24px 0; } td.title { diff --git a/static/font/Necto-Mono.woff b/static/font/Necto-Mono.woff new file mode 100644 index 0000000000000000000000000000000000000000..e9306c98e6fff7a5993e5a81bc67c07daf4f63d9 GIT binary patch literal 31348 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 fGv`b$pU*GHvV4aVYu_Afd^=u|ZI= { spawner.addEventListener("click", (e) => spawnSticker(e)); - // spawner.addEventListener("mousemove", (e) => throttleSpawn(e)); }); function spawnSticker(e) { e.preventDefault(); e.stopPropagation(); - let position = { x: e.clientX, y: e.clientY }; + let position = { x: e.pageX, y: e.pageY }; getFromNegative(e.target, position); } diff --git a/static/js/spawnSticker.js b/static/js/spawnSticker.js index 945436a..e3b2c08 100644 --- a/static/js/spawnSticker.js +++ b/static/js/spawnSticker.js @@ -1,19 +1,41 @@ +// +// +// Container is positioned absolute and the stickers scroll const stickerSpawners = document.querySelectorAll("[data-sticker]"); const container = document.getElementById("sticker-container"); - var throttleSpawn = _.throttle(spawnSticker, 400); Array.from(stickerSpawners).forEach((spawner) => { spawner.addEventListener("mousemove", (e) => throttleSpawn(e)); }); -// spawnSticker(spawner, e); function spawnSticker(e) { - let position = { x: e.clientX, y: e.clientY }; + let position = { x: e.pageX, y: e.pageY }; let content = e.target.dataset.sticker; - createSticker(content, position); + container.appendChild(createSticker(content, position)); } +// +// Container is positioned fixed and the stickers remain in overlay +// (useful for the fixed header) +const fixedStickerSpawners = document.querySelectorAll("[data-sticker-fix]"); +const fixedContainer = document.getElementById("sticker-fix-container"); +var throttleFixedSpawn = _.throttle(spawnFixedSticker, 400); + +Array.from(fixedStickerSpawners).forEach((spawner) => { + spawner.addEventListener("mousemove", (e) => throttleFixedSpawn(e)); +}); + +function spawnFixedSticker(e) { + let position = { x: e.clientX, y: e.clientY }; + let content = e.target.dataset.stickerFix; + fixedContainer.appendChild(createSticker(content, position)); +} + +// +// +// the sticker element is the same for both function + function createSticker(content, position) { sticker = document.createElement("div"); sticker.classList.add("sticker"); @@ -26,5 +48,5 @@ function createSticker(content, position) { rotate(${Math.random() * 40 - 20}deg) `; - container.appendChild(sticker); + return sticker; }