first commit

This commit is contained in:
Julie Blanc 2025-12-29 11:27:47 +01:00
commit 6134204a10
66 changed files with 1924 additions and 0 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
.DS_Store

18
README.md Normal file
View file

@ -0,0 +1,18 @@
HTML paged.js
```
pandoc --defaults src/files.yaml --template=assets/template.html --metadata-file src/meta.yaml --lua-filter=assets/add_section_ids.lua -o index.html
```
PDF plus léger:
```
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/printer -dNOPAUSE -dQUIET -dBATCH -sOutputFile=portfolio-compress.pdf portfolio.pdf
```

19
assets/README.md Normal file
View file

@ -0,0 +1,19 @@
HTML paged.js
```
pandoc --template=assets/template.html --toc -o output.html input.md
```
PDF plus léger:
```
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/printer -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf
```

View file

@ -0,0 +1,49 @@
local filenames = PANDOC_STATE.input_files or {}
function Pandoc(doc)
local blocks = {}
-- Check if input files are available
if not filenames or #filenames == 0 then
io.stderr:write("Error: No input files found in PANDOC_STATE.input_files\n")
return doc
end
-- Process each file independently
for _, filename in ipairs(filenames) do
-- Extract the ID from the filename (the name without the extension)
local section_id = filename:match("([^/]+)%.md$")
local section_class = ""
-- Check if the filename contains "portfolio"
if filename:match("portfolio") then
section_class = " class=\"portfolio-group\""
end
-- Add a section for each file with the optional class
table.insert(blocks, pandoc.RawBlock("html", "<section id=\"" .. section_id .. "\"" .. section_class .. ">"))
-- Read the content of the file as raw text
local file = io.open(filename, "r")
if not file then
io.stderr:write("Error: Unable to read file " .. filename .. "\n")
return doc
end
local file_content = file:read("*all")
file:close()
-- Convert the Markdown content to Pandoc blocks
local file_doc = pandoc.read(file_content, 'markdown')
-- Add the blocks from the file to the section
for _, block in ipairs(file_doc.blocks) do
table.insert(blocks, block)
end
-- Close the section
table.insert(blocks, pandoc.RawBlock("html", "</section>"))
end
-- Return the modified document
return pandoc.Pandoc(blocks, doc.meta)
end

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,35 @@
@font-face {
font-family: 'Area Normal';
src: url('AreaNormal-Bold.woff2') format('woff2'),
url('AreaNormal-Bold.woff') format('woff');
font-weight: normal;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Area Normal';
src: url('AreaNormal-BoldItalic.woff2') format('woff2'),
url('AreaNormal-BoldItalic.woff') format('woff');
font-weight: normal;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Area Normal';
src: url('AreaNormal-Black.woff2') format('woff2'),
url('AreaNormal-Black.woff') format('woff');
font-weight: bold;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Area Normal';
src: url('AreaNormal-BlackItalic.woff2') format('woff2'),
url('AreaNormal-BlackItalic.woff') format('woff');
font-weight: bold;
font-style: italic;
font-display: swap;
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,180 @@
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-Italic.woff2') format('woff2'),
url('GeistMono-Italic.woff') format('woff');
font-weight: normal;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-ThinItalic.woff2') format('woff2'),
url('GeistMono-ThinItalic.woff') format('woff');
font-weight: 100;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-ExtraLightItalic.woff2') format('woff2'),
url('GeistMono-ExtraLightItalic.woff') format('woff');
font-weight: 200;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-SemiBold.woff2') format('woff2'),
url('GeistMono-SemiBold.woff') format('woff');
font-weight: 600;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-Regular.woff2') format('woff2'),
url('GeistMono-Regular.woff') format('woff');
font-weight: normal;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-SemiBoldItalic.woff2') format('woff2'),
url('GeistMono-SemiBoldItalic.woff') format('woff');
font-weight: 600;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-Italic.woff2') format('woff2'),
url('GeistMono-Italic.woff') format('woff');
font-weight: normal;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-BoldItalic.woff2') format('woff2'),
url('GeistMono-BoldItalic.woff') format('woff');
font-weight: bold;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-MediumItalic.woff2') format('woff2'),
url('GeistMono-MediumItalic.woff') format('woff');
font-weight: 500;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-BlackItalic.woff2') format('woff2'),
url('GeistMono-BlackItalic.woff') format('woff');
font-weight: 900;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-Thin.woff2') format('woff2'),
url('GeistMono-Thin.woff') format('woff');
font-weight: 100;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-Bold.woff2') format('woff2'),
url('GeistMono-Bold.woff') format('woff');
font-weight: bold;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-LightItalic.woff2') format('woff2'),
url('GeistMono-LightItalic.woff') format('woff');
font-weight: 300;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-ExtraBoldItalic.woff2') format('woff2'),
url('GeistMono-ExtraBoldItalic.woff') format('woff');
font-weight: bold;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-Black.woff2') format('woff2'),
url('GeistMono-Black.woff') format('woff');
font-weight: 900;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-ExtraBold.woff2') format('woff2'),
url('GeistMono-ExtraBold.woff') format('woff');
font-weight: bold;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-ExtraLight.woff2') format('woff2'),
url('GeistMono-ExtraLight.woff') format('woff');
font-weight: 200;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-Regular.woff2') format('woff2'),
url('GeistMono-Regular.woff') format('woff');
font-weight: normal;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-Medium.woff2') format('woff2'),
url('GeistMono-Medium.woff') format('woff');
font-weight: 500;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Geist Mono';
src: url('GeistMono-Light.woff2') format('woff2'),
url('GeistMono-Light.woff') format('woff');
font-weight: 300;
font-style: normal;
font-display: swap;
}

362
assets/style.css Normal file
View file

@ -0,0 +1,362 @@
* {
margin: 0;
padding: 0;
box-sizing: border-box;
-webkit-font-smoothing: antialiased;
-moz-font-smoothing: antialiased;
-o-font-smoothing: antialiased
}
body{
font-family: 'Area Normal';
font-size: 12px;
line-height: 1.5em;
--small: 9px;
--light: #bfbfbf;
--title: 20px;
--mono: 'Geist Mono';
--table-w: 760px;
}
a{
color: currentColor;
}
img{ width: 100%; }
@page {
size: A4 landscape;
margin-left: 14mm;
margin-right: 14mm;
margin-top: 8mm;
margin-bottom: 14mm;
@bottom-left {
content: element(titleRunning);
}
@bottom-right-corner{
content: counter(page) "/" counter(pages);
/* font-size: 8px; */
color: var(--light);
text-align: left;
}
}
#note-intention,
#devis,
#equipe,
#details{
break-before: page;
break-after: page;
}
header{
margin-top: 20em;
margin-bottom: 3em;
}
header h1{
font-size: 6em;
line-height: 1em;
}
header h2{
margin-top: 0.5em;
}
#studio-variable{
break-after: page;
max-width: 56ch;
}
.infos{
width: 100%;
display: flex;
justify-content: space-between;
gap: 1ch;
}
section > h2{
font-weight: bold;
font-size: var(--title);
break-after: none;
margin-bottom: 2em;
}
section > h2::before{
content: '● ';
}
p{
margin: .75em 0;
widows: 3;
orphans: 3;
}
h3{
font-size: 1em;
margin-top: 2em;
margin-bottom: 1em;
}
ul{
list-style-type: square;
margin-left: 2em;
}
footer{
position: running(titleRunning);
/* font-size: 8px; */
color: var(--light);
}
@media screen, pagedjs-ignore{
body{
padding: 20px;
background-color: #efefef
}
.pagedjs_page{
outline: 1px solid #cfcfcf;
background-color: white;
margin-bottom: 30px;
}
.pagedjs_pages{
margin: 0 auto;
width: var(--pagedjs-width-right);
}
}
/*NOTEINTENTION -------------------------------------------- */
#note-intention{
columns: 2;
column-fill: auto;
column-gap: 2.5em;
}
#note-intention h2{
column-span: all;
}
#note-intention h2 + p{
margin-top: 0em;
}
/*DEVIS -------------------------------------------- */
#devis h2 + p{
width: var(--table-w);
text-align: right;
margin-bottom: 1.5em;
}
#devis table{
width: 760px;
/* font-family: var(--mono); */
border-collapse: collapse;
border-bottom: 1px solid #cfcfcf;
}
#devis table thead th{
background-color: #efefef;
text-align: left;
}
#devis table thead th, td{
padding: 5px 1ch;
}
#devis table thead th:nth-of-type(2),
#devis table thead th:nth-of-type(3),
#devis table td:nth-of-type(2),
#devis table td:nth-of-type(3){
text-align: right!important;
}
#devis table tr:nth-of-type(even){
background-color: #efefef;
}
#devis table .indent{
display: inline-block;
width: 4ch;
}
#devis #total table{
/* border-top: 1px solid #cfcfcf; */
width: 400px;
margin-left: calc(var(--table-w) - 400px);
margin-top: 2em;
border-bottom: none;
}
#devis #total th,
#devis #total td{
background-color: transparent!important;
font-weight: bold;
}
#devis #total tr:nth-of-type(1){
color: var(--light);
}
#devis #total tr:nth-of-type(2) td{
background-color: transparent!important;
}
#devis #total + p{
margin-top: 3em;
font-size: var(--small);
line-height: 1.5em;
max-width: 40ch;
margin-left: calc(var(--table-w) - 400px);
}
/*PLANNING& LIVRABLES---------------------------------------- */
#livrables{
margin-top: 5em;
}
/*EQUIPE --------------------------------------------------- */
#equipe .people{
min-height: 160px;
break-inside: avoid;
margin-top: 6em;
margin-bottom: 6em;
padding-left: 220px;
position: relative;
margin-left: 5em;
}
#equipe figure{
width: 160px;
position: absolute;
left: 0px;
}
#equipe figure figcaption{
display: none;
}
#equipe .people h1{
font-size: var(--title);
line-height: 1.2em;
margin-top: 5px;
}
#equipe .people p{
max-width: 52ch;
}
/*PORTFOLIO intro-------------------------------------------- */
#portfolio-introduction > h2{
margin-bottom: 0px;
}
/*PORTFOLIO 1img -------------------------------------------- */
.portfolio-group{
display: grid;
grid-template-columns: 500px 1fr;
grid-column-gap: 2em;
grid-template-rows: auto auto 1fr;
break-inside: avoid;
margin-bottom: 3em;
}
.portfolio-group figure{
grid-column: 1;
grid-row: 1/4;
margin: 0;
border: 1px solid #cfcfcf;
aspect-ratio: 5/3;
overflow: hidden;
}
.portfolio-group figure figcaption{ display: none; }
.portfolio-group figure img{
width: 100%;
display: flex;
}
.portfolio-group h1{
grid-column: 2;
grid-row: 1;
font-size: var(--title);
line-height: 1.2em;
margin-top: 5px;
}
.portfolio-group p{
grid-column: 2;
grid-row: 2;
width: 54ch;
}
.portfolio-group .details{
grid-column: 2;
grid-row: 3;
margin-top: 0.75em;
}
.portfolio-group .details dl{
display: flex;
margin-bottom: 0.5ch;
}
.portfolio-group .details dt{
width: 12ch;
font-weight: bold;
flex: 0 0 auto;
}

42
assets/template.html Normal file
View file

@ -0,0 +1,42 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>$title$</title>
<script src="https://unpkg.com/pagedjs/dist/paged.polyfill.js"></script>
<link rel="stylesheet" type="text/css" href="assets/style.css">
<link rel="stylesheet" type="text/css" href="assets/fonts/Area/stylesheet.css">
<link rel="stylesheet" type="text/css" href="assets/fonts/Geist-mono/stylesheet.css">
</head>
<body>
<aside class="infos">
<p>$client$</p>
<p>$date$</p>
<p>$contact$</p>
</aside>
<header>
<h1>$title$</h1>
<h2>$baseline$</h2>
</header>
<footer>
<p><p>$footer$</p></p>
</footer>
$body$
</body>
</html>

BIN
images/acau.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 MiB

BIN
images/actuel-inactuel.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 493 KiB

BIN
images/chromobase.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

BIN
images/decarb-one.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 350 KiB

BIN
images/esaj.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

BIN
images/medialab.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 564 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

BIN
images/wysiwyg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 452 KiB

801
index.html Normal file
View file

@ -0,0 +1,801 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Studio Variable</title>
<script src="https://unpkg.com/pagedjs/dist/paged.polyfill.js"></script>
<link rel="stylesheet" type="text/css" href="assets/style.css">
<link rel="stylesheet" type="text/css" href="assets/fonts/Area/stylesheet.css">
<link rel="stylesheet" type="text/css" href="assets/fonts/Geist-mono/stylesheet.css">
</head>
<body>
<aside class="infos">
<p>Proposition RésIn</p>
<p>6 octobre 2025</p>
<p>contact@studio-varible.com</p>
</aside>
<header>
<h1>Studio Variable</h1>
<h2>Design × code</h2>
</header>
<footer>
<p><p>Studio Variable Proposition RésIn</p></p>
</footer>
<section id="studio-variable">
<p>Créé en juin 2025 et basé à Paris, Studio Variable conjugue
<strong>design graphique, design dinterface et développement web
full-stack</strong>. Œuvrant principalement avec le secteur de la
recherche, de lécologie et de la culture, il collabore aussi bien
avec de grands comptes quavec des indépendants.</p>
<p>Fondé par <strong>Julie Blanc</strong> (designer-développeuse et
chercheuse en ergonomie) et <strong>Adrien Payet</strong>
(designer-développeur issu de la philosophie), Studio Variable
développe une approche formelle et technique qui concilie
<strong>ergonomie, sobriété, accessibilité et respect de la vie
privée</strong>.</p>
<p>Nous sommes spécialisés dans la publication à source unique en
<strong>web-to-print</strong>. Nous privilégions les projets ouverts
et engagés, avec une forte culture du logiciel libre et de lopen
source.</p>
</section>
<section id="note-intention">
<h2 id="note-intention">Note intention</h2>
<p>Notre intervention se concentre sur une double approche, à la
fois graphique et technique, pensée comme un tout cohérent. Nous
concevons le design non pas comme une couche séparée mais comme un
travail mené directement dans le code, afin que chaque choix
esthétique saccompagne dune réflexion technique et ergonomique.
Les premiers prototypes seront donc réalisés en HTML et CSS, pour
permettre de valider rapidement des maquettes fonctionnelles,
accessibles et déjà proches de la version finale. Cette méthode
réduit les écarts entre intention et réalisation, et permet
dintégrer dès le départ nos principes décoconception et
daccessibilité.</p>
<p><strong>Sur le plan graphique</strong>, nous portons une
attention particulière à la lisibilité et à lharmonisation des
contenus. Lhétérogénéité des profils proposés dans lannuaire
(parfois très succincts, parfois très denses) sera prise en compte
pour construire des pages qui restent esthétiques et équilibrées.
Nous privilégions <strong>une esthétique sobre, sur mesure, où la
typographie et les contrastes assurent une hiérarchie
claire</strong>, afin déviter les ruptures visuelles dans
lannuaire. Larbre des compétences, qui constitue un outil central
de navigation et de recherche, fera lobjet dune refonte spécifique
: nous souhaitons en améliorer la lisibilité et lexploration, en le
rendant plus visible et plus interactif, tout en veillant à une
utilisation fluide sur mobile comme sur ordinateur. Notre objectif
est de concevoir une interface qui mette en valeur les compétences
et facilite réellement la recherche dans lannuaire, sans surcharge
graphique inutile.</p>
<p><strong>Sur le plan technique</strong>, nous proposons une
architecture simple : <strong>HTML, SCSS et JavaScript
vanilla</strong>, complétés si nécessaire par une librairie légère
comme Alpine.js pour la recherche réactive. Cette sobriété garantit
la compatibilité avec la licence libre du projet, facilite la
maintenance et limite lempreinte écologique du site. Nous
travaillerons à partir de lexistant, que ce soit le code ou limage
Docker déjà utilisée, et nous engageons à adapter nos développements
à vos contraintes sans surcomplexification. En fonction de vos
préférence, nous travaillerons soit sur une branch du répôt Git
existant soit sur une copie de ce repo.</p>
<p>Notre façon de travailler repose sur des <strong>allers-retours
réguliers</strong> avec vous : nous définirons des étapes
intermédiaires pour valider les choix au fur et à mesure, plutôt que
de tout livrer en une fois. Cela permet dajuster le projet
en fonction de vos retours et des contraintes qui pourraient
émerger.</p>
<p>Notre force réside dans la complémentarité de nos profils :
designers et développeur·ses à la fois, nous avons lhabitude de
traverser les deux champs de compétences et de <strong>faire
dialoguer les logiques formelles et techniques</strong>. En tant que
studio, nous défendons une approche sur-mesure, attentive aux usages
concrets, à la sobriété des moyens employés et au respect de la vie
privée. Cette philosophie guidera lensemble de notre intervention :
un site léger, <br>lisible et durable, au service du réseau
RésIn.</p>
<h3 id="les-forces-de-notre-proposition">Les forces de notre
proposition</h3>
<ul>
<li><strong>Des maquettes directement codées en HTML et
CSS</strong>, plutôt que figées dans un outil comme Figma. Cette
approche permet dadopter une « mentalité wev » dès le maquettage.
Elle garantie la faisabilité technique du design, la fidélité des
maquettes par rapport au résultat final, réduit les allers-retours
entre design et développement et accélère nettement
lintégration.</li>
<li><strong>Un travail mené au plus près du code existant</strong>,
afin de faciliter lintégration de nos développements, dassurer la
continuité technique et de favoriser des échanges simples et
efficaces avec vous.</li>
<li><strong>Une démarche décoconception et daccessibilité
assumée</strong>, qui se traduit par un design et un code légers, un
recours limité à JavaScript, un HTMLbien construit répondant aux
normes daccessibilité, lutlisation de variable fonts et des
fallback bien pensé. Bref, une attention constante à la performance
et à la sobriété des ressources.</li>
<li><strong>Une refonte graphique pensée autour de larbre des
compétences</strong>, conçu comme un élément central et progressif
de navigation : il sera placé visuellement à proximité du moteur de
recherche sur desktop, déployé en accordéon sur mobile, et enrichi
de fonctions de multi-filtrage. <br>Selon la pertinence, un fil
dAriane (breadcrumb) pour contextualiser <br>les profils
affichés.</li>
</ul>
</section>
<section id="devis">
<h2 id="devis">Devis</h2>
<p>→ Taux journalier: 800€ HT</p>
<table>
<colgroup>
<col style="width: 75%" />
<col style="width: 11%" />
<col style="width: 12%" />
</colgroup>
<thead>
<tr class="header">
<th><strong>Tâche</strong></th>
<th><strong>Jours</strong></th>
<th><strong>€ (HT)</strong></th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>Création du logo</td>
<td>1</td>
<td>800</td>
</tr>
<tr class="even">
<td>Identité visuelle avec mockup dune page responsive type
(maquettes HTML &amp; CSS)</td>
<td>2</td>
<td>1600</td>
</tr>
<tr class="odd">
<td>UI arbre de compétences (explorable, filtrage)</td>
<td>1.5</td>
<td>1200</td>
</tr>
<tr class="even">
<td>Développement front-end de toutes les pages responsives</td>
<td></td>
<td></td>
</tr>
<tr class="odd">
<td><span class="indent"></span>→ Home page</td>
<td>1</td>
<td>800</td>
</tr>
<tr class="even">
<td><span class="indent"></span>→ Pages listes et de tri</td>
<td>1.5</td>
<td>1200</td>
</tr>
<tr class="odd">
<td><span class="indent"></span>→ Pages individuelles</td>
<td>1.5</td>
<td>1200</td>
</tr>
<tr class="even">
<td><span class="indent"></span>→ Pages de contenu: présentation,
ressources, etc.</td>
<td>0.5</td>
<td>400</td>
</tr>
<tr class="odd">
<td><span class="indent"></span>→ Intégration au code existant</td>
<td>30.00%</td>
<td>1080</td>
</tr>
<tr class="even">
<td>Mise en place de la recherche réactive</td>
<td>0.5</td>
<td>400</td>
</tr>
<tr class="odd">
<td>Révisions UI et petits ajustements</td>
<td>0.5</td>
<td>400</td>
</tr>
<tr class="even">
<td>Tests cross-device, optimisation HTML/CSS/JS et
accessibilité</td>
<td>0.5</td>
<td>400</td>
</tr>
<tr class="odd">
<td>Gestion de projet</td>
<td>10.00%</td>
<td>948</td>
</tr>
</tbody>
</table>
<div id="total">
<table>
<thead>
<tr class="header">
<th>Sous total HT</th>
<th>10428</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>TVA 20 %</td>
<td>2085.6</td>
</tr>
<tr class="even">
<td>Total TTC</td>
<td>12513.6</td>
</tr>
</tbody>
</table>
</div>
<p>Note : Si votre structure ne récupère pas la TVA et que cela
constitue une contrainte budgétaire, nous vous invitons à nous en
faire part afin den discuter.</p>
</section>
<section id="planning">
<h2 id="planning-phases">Planning &amp; phases</h2>
<ul>
<li>Démarrage : <strong>dès sélection</strong> (idéalement semaine
du 13 octobre 2025).</li>
<li>Rendu final : <strong>8 décembre 2025</strong>.</li>
<li>Mode : itérations de 1 à 2 semaines (sprints courts).</li>
</ul>
<h3 id="phases">Phases</h3>
<ul>
<li>Semaine 1 (1317 oct.) : Échange pour le démarrage du projet,
accès API</li>
<li>Semaine 23 (2031 oct.) : Proposition didentité sur maquette
HTML/CSS statique (1 page type), avec UI arbre de compétences.
Inclus palette de couleur +proposition logo</li>
<li><strong>4 novembre : validation de lidentité
proposée</strong></li>
<li>Semaine 46 (321 nov.) : Développement front avec sprints
<ul>
<li>Sprint 1 — Copie du dèpôt, pipeline parallèle, audit HTML, mise
en place SASS</li>
<li>Sprint 2 — Intégration arbre de compétence, développement de la
page dacceuil et de la liste filtrables</li>
<li>Sprint 3 — Développement et intégration des pages individuelles
et des pages de contenus</li>
<li>Sprint 4 — Recherche plein texte réactive et affinement de
laffichage filtrage multi-sélection</li>
</ul></li>
<li>Semaine 7 (2428 nov.) : Révisions UI et petits ajustements.
Validation définitive du logo.</li>
<li>Semaine 8 (15 déc.) : Tests &amp; optimisation.</li>
<li><strong>Livraison finale</strong> : au plus tard <strong>8
décembre 2025</strong>.</li>
</ul>
</section>
<section id="livrables">
<h2 id="livrables">Livrables</h2>
<ul>
<li>Copie du dépôt GitHub public (AGPLv3) avec : code,
Dockerfile</li>
<li>Pack logo (.svg / .png multi-résolution).</li>
<li>Maquettes codées (HTML/SCSS) si demandées</li>
</ul>
</section>
<section id="equipe">
<h2 id="équipe">Équipe</h2>
<div class="people">
<figure>
<img src="images/studio-variable_Julie.jpg" alt="." />
<figcaption aria-hidden="true">.</figcaption>
</figure>
<h1 id="julie-blanc-chef-de-projet">Julie Blanc, chef de projet</h1>
<p>Docteur en ergonomie et spécialiste de CSS, Julie Blanc assurera
la chefferie de projet, le <strong>design</strong> et le
<strong>développement front-end</strong>.</p>
<p>Julie est designer, développeuse et chercheuse. Elle a co-fondé
le studio Variable. Elle est chercheuse associée à la HEAD (Genève).
Sa thèse, soutenue en 2023, porte sur lutilisation des
techonologies du web par les designers graphique.</p>
</div>
<div class="people">
<figure>
<img src="images/studio-variable_Adrien.jpg" alt="." />
<figcaption aria-hidden="true">.</figcaption>
</figure>
<h1 id="adrien-payet">Adrien Payet</h1>
<p>Développeur full-stack, spécialisé en design et développement de
back-office et dinteractions front-end, Adrien apportera son appui
pour garantir une <strong>intégration harmonieuse</strong> dans
larchitecture et lécosystème technique existants.</p>
<p>Adrien étudie, enseigne et pratique la philosophie, le design et
le code. Il a co-fondé le studio Variable. Il enseigne à lENSCi et
à Paris 1.</p>
</div>
</section>
<section id="portfolio-introduction" class="portfolio-group">
<h2 id="sélection-de-projets">Sélection de projets</h2>
</section>
<section id="wysiwyg" class="portfolio-group">
<h1 id="wysiwyg">WYSIWYG</h1>
<p>Projet de recherche lévolution des logiciels de graphisme en
Suisse et en France (1980 - aujourdhui)</p>
<figure>
<img src="images/wysiwyg.png" alt="." />
<figcaption aria-hidden="true">.</figcaption>
</figure>
<div class="details">
<dl>
<dt>
URL
</dt>
<dd>
<a href="https://wysiwyg.ch/" target="_blank">wysiwyg.ch</a>
</dd>
</dl>
<dl>
<dt>
Secteur
</dt>
<dd>
Recherche
</dd>
</dl>
<dl>
<dt>
Client
</dt>
<dd>
HEAD Genève, Haute école dart et de design
</dd>
</dl>
<dl>
<dt>
Prestation(s)
</dt>
<dd>
Design, développement full-stack
</dd>
</dl>
<dl>
<dt>
Date
</dt>
<dd>
2025
</dd>
</dl>
</div>
</section>
<section id="chromobase" class="portfolio-group">
<h1 id="chromobase">Chromobase</h1>
<p>Base de données du projet ERC Chromotope qui explore limpact
culturel de lapparition de la couleur dans lindustrie dans les
années 1850.</p>
<figure>
<img src="images/chromobase.png" alt="." />
<figcaption aria-hidden="true">.</figcaption>
</figure>
<div class="details">
<dl>
<dt>
URL
</dt>
<dd>
<a href="https://chromobase.huma-num.fr/" target="_blank">chromobase.huma-num.fr</a>
</dd>
</dl>
<dl>
<dt>
Secteur
</dt>
<dd>
Recherche
</dd>
</dl>
<dl>
<dt>
Client
</dt>
<dd>
Sorbonne Université, CNAM, University of Oxford
</dd>
</dl>
<dl>
<dt>
Prestation(s)
</dt>
<dd>
Design, front-end
</dd>
</dl>
<dl>
<dt>
Partenaire(s)
</dt>
<dd>
OuestWare (développement)
</dd>
</dl>
<dl>
<dt>
Date
</dt>
<dd>
2023
</dd>
</dl>
</div>
</section>
<section id="medialab" class="portfolio-group">
<h1 id="médialab">médialab</h1>
<p>Laboratoire interdisplinaire qui interroge les relations entre le
numérique et nos sociétés.</p>
<figure>
<img src="images/medialab.png" alt="." />
<figcaption aria-hidden="true">.</figcaption>
</figure>
<div class="details">
<dl>
<dt>
URL
</dt>
<dd>
<a href="https://medialab.sciencespo.fr/" target="_blank">medialab.sciencespo.fr</a>
</dd>
</dl>
<dl>
<dt>
Secteur
</dt>
<dd>
Recherche
</dd>
</dl>
<dl>
<dt>
Client
</dt>
<dd>
médialab, SciencesPo
</dd>
</dl>
<dl>
<dt>
Prestation(s)
</dt>
<dd>
Design, développement front-end
</dd>
</dl>
<dl>
<dt>
Partenaire(s)
</dt>
<dd>
en collaboration avec Benjamin Benjamin Gremillon et léquipe du
médialab
</dd>
</dl>
<dl>
<dt>
Date
</dt>
<dd>
2019
</dd>
</dl>
</div>
</section>
<section id="cultures-visuelles" class="portfolio-group">
<h1 id="cultures-visuelles">Cultures visuelles</h1>
<p>Plateforme pour le programme de recherche, intégrant une
interface graphique an front-end pour lédition du contenu.</p>
<figure>
<img src="images/cultures-visuelles.png" alt="." />
<figcaption aria-hidden="true">.</figcaption>
</figure>
<div class="details">
<dl>
<dt>
URL
</dt>
<dd>
<a href="https://www.culturesvisuelles.org/" target="_blank">culturesvisuelles.org</a>
</dd>
</dl>
<dl>
<dt>
Secteur
</dt>
<dd>
Recherche
</dd>
</dl>
<dl>
<dt>
Client
</dt>
<dd>
Université de Strasbourg
</dd>
</dl>
<dl>
<dt>
Prestation(s)
</dt>
<dd>
Design, éveloppement full-stack
</dd>
</dl>
<dl>
<dt>
Partenaire(s)
</dt>
<dd>
en collaboration avec Timothée Goguely
</dd>
</dl>
<dl>
<dt>
Date
</dt>
<dd>
2020
</dd>
</dl>
</div>
</section>
<section id="actuel-inactuel" class="portfolio-group">
<h1 id="actuel-inactuel">actuel-inactuel</h1>
<p>Plateforme pour une critique des arts et des techniques.</p>
<figure>
<img src="images/actuel-inactuel.png" alt="." />
<figcaption aria-hidden="true">.</figcaption>
</figure>
<div class="details">
<dl>
<dt>
URL
</dt>
<dd>
<a href="https://actuel-inactuel.fr/" target="_blank">actuel-inactuel.fr</a>
</dd>
</dl>
<dl>
<dt>
Secteur
</dt>
<dd>
Recherche
</dd>
</dl>
<dl>
<dt>
Client
</dt>
<dd>
Association époque
</dd>
</dl>
<dl>
<dt>
Prestation(s)
</dt>
<dd>
Design, éveloppement full-stack
</dd>
</dl>
<dl>
<dt>
Date
</dt>
<dd>
2024
</dd>
</dl>
</div>
</section>
<section id="heroines" class="portfolio-group">
<h1 id="héroïnes">Héro·ïne·s</h1>
<p>Publication du groupe de recherche de La Fémis à propos de la
figure du héros dans les œuvres et pratiques artistiques</p>
<figure>
<img src="images/repenser-les-heros.png" alt="." />
<figcaption aria-hidden="true">.</figcaption>
</figure>
<div class="details">
<dl>
<dt>
URL
</dt>
<dd>
<a href="https://repenserlesheros.femis.fr/" target="_blank">repenserlesheros.femis.fr</a>
</dd>
</dl>
<dl>
<dt>
Secteur
</dt>
<dd>
Recherche
</dd>
</dl>
<dl>
<dt>
Client
</dt>
<dd>
groupe de recherche de La Fémis / SACRe, PSL
</dd>
</dl>
<dl>
<dt>
Prestation(s)
</dt>
<dd>
Design, développement full-stack
</dd>
</dl>
<!-- <dl>
<dt>Partenaire(s)</dt>
<dd>en collaboration avec Benjamin Benjamin Gremillon et léauipe du médialab</dd>
</dl> -->
<dl>
<dt>
Date
</dt>
<dd>
2021
</dd>
</dl>
</div>
</section>
<section id="acau" class="portfolio-group">
<h1 id="acau">ACAU</h1>
<p>Site vitrine pour lAgence Coopérative Architectes
Urbanistes.</p>
<figure>
<img src="images/acau.png" alt="." />
<figcaption aria-hidden="true">.</figcaption>
</figure>
<div class="details">
<dl>
<dt>
URL
</dt>
<dd>
<a href="https://www.acau-architectes.fr/" target="_blank">acau-architectes.fr/</a>
</dd>
</dl>
<dl>
<dt>
Secteur
</dt>
<dd>
Communication
</dd>
</dl>
<dl>
<dt>
Client
</dt>
<dd>
Agence Coopérative Architectes Urbanistes
</dd>
</dl>
<dl>
<dt>
Prestation(s)
</dt>
<dd>
Développement full-stack
</dd>
</dl>
<dl>
<dt>
Partenaire(s)
</dt>
<dd>
Plastac (design)
</dd>
</dl>
<dl>
<dt>
Date
</dt>
<dd>
2024
</dd>
</dl>
</div>
</section>
<section id="decarb-one" class="portfolio-group">
<h1 id="decarb.one">Decarb.one</h1>
<p>Site vitrine pour lagence de relations presse et de
communication, decarb.one qui raconte un monde décarboné.</p>
<figure>
<img src="images/decarb-one.png" alt="." />
<figcaption aria-hidden="true">.</figcaption>
</figure>
<div class="details">
<dl>
<dt>
URL
</dt>
<dd>
<a href="https://decarb.one/" target="_blank">decarb.one</a>
</dd>
</dl>
<dl>
<dt>
Secteur
</dt>
<dd>
Communication
</dd>
</dl>
<dl>
<dt>
Client
</dt>
<dd>
decarb.one
</dd>
</dl>
<dl>
<dt>
Prestation(s)
</dt>
<dd>
Design, développement full-stack
</dd>
</dl>
<dl>
<dt>
Partenaire(s)
</dt>
<dd>
en collaboration avec Praticable
</dd>
</dl>
<dl>
<dt>
Date
</dt>
<dd>
2022
</dd>
</dl>
</div>
</section>
<section id="details">
<p>STUDIO VARIABLE<br />
SAS, société par actions simplifiée au capital social de 1 200,00
<br />
N° SIRET 988 558 003 00014<br />
N° de TVA FR95988558003</p>
<p>Siège social:<br />
22 rue Boyer<br />
75020 Paris - France</p>
<p>Lieu dactivité:<br />
Césure (Bureau 339)<br />
13 rue Santeuil<br />
75005 Paris - France</p>
<p>Site web: <a
href="https://studio-variable.com/">studio-variable.com</a></p>
<p>Pour nous contacter: contact@studio-variable.com</p>
</section>
</body>
</html>

18
src/details.md Normal file
View file

@ -0,0 +1,18 @@
STUDIO VARIABLE \
SAS, société par actions simplifiée au capital social de 1 200,00 € \
N° SIRET 988 558 003 00014 \
N° de TVA FR95988558003
Siège social: \
22 rue Boyer \
75020 Paris - France
Lieu dactivité: \
Césure (Bureau 339) \
13 rue Santeuil \
75005 Paris - France
Site web: [studio-variable.com](https://studio-variable.com/)
Pour nous contacter: contact@studio-variable.com

38
src/devis.md Normal file
View file

@ -0,0 +1,38 @@
## Devis
→ Taux journalier: 800€ HT
| **Tâche** | **Jours** | **€ (HT)** |
| ------------------------------------------------------------ | --------- | ---------- |
| Création du logo | 1 | 800 |
| Identité visuelle avec mockup dune page responsive type (maquettes HTML & CSS) | 2 | 1600 |
| UI arbre de compétences (explorable, filtrage) | 1.5 | 1200 |
| Développement front-end de toutes les pages responsives | | |
| <span class="indent"></span>→ Home page | 1 | 800 |
| <span class="indent"></span>→ Pages listes et de tri | 1.5 | 1200 |
| <span class="indent"></span>→ Pages individuelles | 1.5 | 1200 |
| <span class="indent"></span>→ Pages de contenu: présentation, ressources, etc. | 0.5 | 400 |
| <span class="indent"></span>→ Intégration au code existant | 30.00% | 1080 |
| Mise en place de la recherche réactive | 0.5 | 400 |
| Révisions UI et petits ajustements | 0.5 | 400 |
| Tests cross-device, optimisation HTML/CSS/JS et accessibilité | 0.5 | 400 |
| Gestion de projet | 10.00% | 948 |
<div id="total">
| Sous total HT | 10428 |
| ------------- | ------- |
| TVA 20 % | 2085.6 |
| Total TTC | 12513.6 |
</div>
Note : Si votre structure ne récupère pas la TVA et que cela constitue une contrainte budgétaire, nous vous invitons à nous en faire part afin den discuter.

29
src/equipe.md Normal file
View file

@ -0,0 +1,29 @@
## Équipe
<div class="people">
![.](images/studio-variable_Julie.jpg)
# Julie Blanc, chef de projet
Docteur en ergonomie et spécialiste de CSS, Julie Blanc assurera la chefferie de projet, le **design** et le **développement front-end**.
Julie est designer, développeuse et chercheuse. Elle a co-fondé le studio Variable. Elle est chercheuse associée à la HEAD (Genève). Sa thèse, soutenue en 2023, porte sur lutilisation des techonologies du web par les designers graphique.
</div>
<div class="people">
![.](images/studio-variable_Adrien.jpg)
# Adrien Payet
Développeur full-stack, spécialisé en design et développement de back-office et d'interactions front-end, Adrien apportera son appui pour garantir une **intégration harmonieuse** dans larchitecture et lécosystème technique existants.
Adrien étudie, enseigne et pratique la philosophie, le design et le code. Il a co-fondé le studio Variable. Il enseigne à lENSCi et à Paris 1.
</div>

17
src/files.yaml Normal file
View file

@ -0,0 +1,17 @@
input-files:
- src/studio-variable.md
- src/note-intention.md
- src/devis.md
- src/planning.md
- src/livrables.md
- src/equipe.md
- src/portfolio-introduction.md
- src/portfolio-1img/wysiwyg.md
- src/portfolio-1img/chromobase.md
- src/portfolio-1img/medialab.md
- src/portfolio-1img/cultures-visuelles.md
- src/portfolio-1img/actuel-inactuel.md
- src/portfolio-1img/heroines.md
- src/portfolio-1img/acau.md
- src/portfolio-1img/decarb-one.md
- src/details.md

5
src/livrables.md Normal file
View file

@ -0,0 +1,5 @@
## Livrables
- Copie du dépôt GitHub public (AGPLv3) avec : code, Dockerfile
- Pack logo (.svg / .png multi-résolution).
- Maquettes codées (HTML/SCSS) si demandées

8
src/meta.yaml Normal file
View file

@ -0,0 +1,8 @@
---
title: "Studio Variable"
baseline: "Design × code"
client: "Proposition RésIn"
date: "6 octobre 2025"
contact: "contact@studio-varible.com"
footer: "Studio Variable Proposition RésIn"
---

19
src/note-intention.md Normal file
View file

@ -0,0 +1,19 @@
## Note intention
Notre intervention se concentre sur une double approche, à la fois graphique et technique, pensée comme un tout cohérent. Nous concevons le design non pas comme une couche séparée mais comme un travail mené directement dans le&nbsp;code, afin que chaque choix esthétique saccompagne dune réflexion technique et ergonomique. Les premiers prototypes seront donc réalisés en HTML et CSS, pour permettre de valider rapidement des maquettes fonctionnelles, accessibles et déjà proches de la version finale. Cette méthode réduit les écarts entre intention et réalisation, et permet dintégrer dès le départ nos principes décoconception et daccessibilité.
**Sur le plan graphique**, nous portons une attention particulière à la lisibilité et&nbsp;à&nbsp;lharmonisation des contenus. Lhétérogénéité des profils proposés dans lannuaire (parfois très succincts, parfois très denses) sera prise en compte pour construire des pages qui restent esthétiques et équilibrées. Nous privilégions **une&nbsp;esthétique sobre, sur mesure, où la typographie et les contrastes assurent une&nbsp;hiérarchie claire**, afin déviter les ruptures visuelles dans lannuaire. Larbre des compétences, qui constitue un outil central de navigation et de recherche, fera lobjet dune refonte spécifique : nous souhaitons en améliorer la lisibilité et lexploration, en le rendant plus visible et plus interactif, tout en veillant à une utilisation fluide sur mobile comme sur ordinateur. Notre objectif est de concevoir une interface qui mette en valeur les compétences et facilite réellement la&nbsp;recherche dans lannuaire, sans surcharge graphique inutile.
**Sur le plan technique**, nous proposons une architecture simple : **HTML, SCSS et&nbsp;JavaScript vanilla**, complétés si nécessaire par une librairie légère comme Alpine.js pour la recherche réactive. Cette sobriété garantit la compatibilité avec la licence libre du projet, facilite la maintenance et limite lempreinte écologique du site. Nous travaillerons à partir de lexistant, que ce soit le code ou limage Docker déjà utilisée, et nous engageons à adapter nos développements à vos contraintes sans surcomplexification. En fonction de vos préférence, nous travaillerons soit sur une branch du répôt Git existant soit sur une copie de ce repo.
Notre façon de travailler repose sur des **allers-retours réguliers** avec vous : nous&nbsp;définirons des étapes intermédiaires pour valider les choix au fur et à mesure, plutôt que de tout livrer en une fois. Cela permet dajuster le projet en&nbsp;fonction de&nbsp;vos retours et des contraintes qui pourraient émerger.
Notre force réside dans la complémentarité de nos profils : designers et&nbsp;développeur·ses à la fois, nous avons lhabitude de traverser les deux champs de&nbsp;compétences et de **faire dialoguer les logiques formelles et techniques**. En&nbsp;tant que studio, nous défendons une approche sur-mesure, attentive aux usages concrets, à la sobriété des moyens employés et au respect de la vie privée. Cette&nbsp;philosophie guidera lensemble de notre intervention : un site léger, <br>lisible et durable, au service du réseau RésIn.
### Les forces de notre proposition
- **Des maquettes directement codées en HTML et CSS**, plutôt que figées dans un outil comme Figma. Cette approche permet dadopter une « mentalité wev » dès le maquettage. Elle garantie la&nbsp;faisabilité technique du design, la&nbsp;fidélité des maquettes par rapport au résultat final, réduit les allers-retours entre design et développement et accélère nettement lintégration.
- **Un travail mené au plus près du code existant**, afin de&nbsp;faciliter lintégration de&nbsp;nos développements, dassurer la continuité technique et de favoriser des&nbsp;échanges simples et efficaces avec vous.
- **Une démarche décoconception et daccessibilité assumée**, qui se traduit par un design et un code légers, un recours limité à JavaScript, un HTMLbien construit répondant aux normes daccessibilité, lutlisation de variable fonts et&nbsp;des fallback bien pensé. Bref, une attention constante à la performance et&nbsp;à&nbsp;la&nbsp;sobriété des ressources.
- **Une refonte graphique pensée autour de larbre des compétences**, conçu comme un élément central et progressif de navigation : il sera placé visuellement à proximité du moteur de recherche sur desktop, déployé en&nbsp;accordéon sur mobile, et enrichi de fonctions de multi-filtrage. <br>Selon la pertinence, un fil dAriane (breadcrumb) pour contextualiser <br>les profils affichés.

21
src/planning.md Normal file
View file

@ -0,0 +1,21 @@
## Planning & phases
- Démarrage : **dès sélection** (idéalement semaine du 13 octobre 2025).
- Rendu final : **8 décembre 2025**.
- Mode : itérations de 1 à 2 semaines (sprints courts).
### Phases
- Semaine 1 (1317 oct.) : Échange pour le démarrage du projet, accès API
- Semaine 23 (2031 oct.) : Proposition didentité sur maquette HTML/CSS statique (1 page type), avec UI arbre de compétences. Inclus palette de couleur +proposition logo
- **4 novembre : validation de lidentité proposée**
- Semaine 46 (321 nov.) : Développement front avec sprints
- Sprint 1 — Copie du dèpôt, pipeline parallèle, audit HTML, mise en place SASS
- Sprint 2 — Intégration arbre de compétence, développement de la page dacceuil et de la liste filtrables
- Sprint 3 — Développement et intégration des pages individuelles et des pages de contenus
- Sprint 4 — Recherche plein texte réactive et affinement de laffichage filtrage multi-sélection
- Semaine 7 (2428 nov.) : Révisions UI et petits ajustements. Validation définitive du logo.
- Semaine 8 (15 déc.) : Tests & optimisation.
- **Livraison finale** : au plus tard **8 décembre 2025**.

View file

@ -0,0 +1,33 @@
# ACAU
Site vitrine pour lAgence Coopérative Architectes Urbanistes.
![.](images/acau.png)
<div class="details">
<dl>
<dt>URL</dt>
<dd><a href="https://www.acau-architectes.fr/" target="_blank">acau-architectes.fr/</a>
</dd>
</dl>
<dl>
<dt>Secteur</dt>
<dd>Communication</dd>
</dl>
<dl>
<dt>Client</dt>
<dd>Agence Coopérative Architectes Urbanistes</dd>
</dl>
<dl>
<dt>Prestation(s)</dt>
<dd>Développement full-stack</dd>
</dl>
<dl>
<dt>Partenaire(s)</dt>
<dd>Plastac (design)</dd>
</dl>
<dl>
<dt>Date</dt>
<dd>2024</dd>
</dl>
</div>

View file

@ -0,0 +1,29 @@
# actuel-inactuel
Plateforme pour une critique des arts et des techniques.
![.](images/actuel-inactuel.png)
<div class="details">
<dl>
<dt>URL</dt>
<dd><a href="https://actuel-inactuel.fr/" target="_blank">actuel-inactuel.fr</a>
</dd>
</dl>
<dl>
<dt>Secteur</dt>
<dd>Recherche</dd>
</dl>
<dl>
<dt>Client</dt>
<dd>Association époque </dd>
</dl>
<dl>
<dt>Prestation(s)</dt>
<dd>Design, éveloppement full-stack</dd>
</dl>
<dl>
<dt>Date</dt>
<dd>2024</dd>
</dl>
</div>

View file

@ -0,0 +1,33 @@
# Chromobase
Base de données du projet ERC Chromotope qui explore l'impact culturel de lapparition de la couleur dans lindustrie dans les années 1850.
![.](images/chromobase.png)
<div class="details">
<dl>
<dt>URL</dt>
<dd><a href="https://chromobase.huma-num.fr/" target="_blank">chromobase.huma-num.fr</a>
</dd>
</dl>
<dl>
<dt>Secteur</dt>
<dd>Recherche</dd>
</dl>
<dl>
<dt>Client</dt>
<dd>Sorbonne Université, CNAM, University of Oxford</dd>
</dl>
<dl>
<dt>Prestation(s)</dt>
<dd>Design, front-end</dd>
</dl>
<dl>
<dt>Partenaire(s)</dt>
<dd>OuestWare (développement)</dd>
</dl>
<dl>
<dt>Date</dt>
<dd>2023</dd>
</dl>
</div>

View file

@ -0,0 +1,33 @@
# Cultures visuelles
Plateforme pour le programme de recherche, intégrant une interface graphique an front-end pour lédition du contenu.
![.](images/cultures-visuelles.png)
<div class="details">
<dl>
<dt>URL</dt>
<dd><a href="https://www.culturesvisuelles.org/" target="_blank">culturesvisuelles.org</a>
</dd>
</dl>
<dl>
<dt>Secteur</dt>
<dd>Recherche</dd>
</dl>
<dl>
<dt>Client</dt>
<dd>Université de Strasbourg</dd>
</dl>
<dl>
<dt>Prestation(s)</dt>
<dd>Design, éveloppement full-stack</dd>
</dl>
<dl>
<dt>Partenaire(s)</dt>
<dd>en collaboration avec Timothée Goguely</dd>
</dl>
<dl>
<dt>Date</dt>
<dd >2020</dd>
</dl>
</div>

View file

@ -0,0 +1,33 @@
# Decarb.one
Site vitrine pour lagence de relations presse et de communication, decarb.one qui raconte un monde décarboné.
![.](images/decarb-one.png)
<div class="details">
<dl>
<dt>URL</dt>
<dd><a href="https://decarb.one/" target="_blank">decarb.one</a>
</dd>
</dl>
<dl>
<dt>Secteur</dt>
<dd>Communication</dd>
</dl>
<dl>
<dt>Client</dt>
<dd>decarb.one</dd>
</dl>
<dl>
<dt>Prestation(s)</dt>
<dd>Design, développement full-stack</dd>
</dl>
<dl>
<dt>Partenaire(s)</dt>
<dd>en collaboration avec Praticable</dd>
</dl>
<dl>
<dt>Date</dt>
<dd>2022</dd>
</dl>
</div>

View file

@ -0,0 +1,33 @@
# Héro·ïne·s
Publication du groupe de recherche de La Fémis à propos de la figure du héros dans les œuvres et pratiques artistiques
![.](images/repenser-les-heros.png)
<div class="details">
<dl>
<dt>URL</dt>
<dd><a href="https://repenserlesheros.femis.fr/" target="_blank">repenserlesheros.femis.fr</a>
</dd>
</dl>
<dl>
<dt>Secteur</dt>
<dd>Recherche</dd>
</dl>
<dl>
<dt>Client</dt>
<dd>groupe de recherche de La Fémis / SACRe, PSL</dd>
</dl>
<dl>
<dt>Prestation(s)</dt>
<dd>Design, développement full-stack</dd>
</dl>
<!-- <dl>
<dt>Partenaire(s)</dt>
<dd>en collaboration avec Benjamin Benjamin Gremillon et léauipe du médialab</dd>
</dl> -->
<dl>
<dt>Date</dt>
<dd>2021</dd>
</dl>
</div>

View file

@ -0,0 +1,33 @@
# médialab
Laboratoire interdisplinaire qui interroge les relations entre le numérique et nos sociétés.
![.](images/medialab.png)
<div class="details">
<dl>
<dt>URL</dt>
<dd><a href="https://medialab.sciencespo.fr/" target="_blank">medialab.sciencespo.fr</a>
</dd>
</dl>
<dl>
<dt>Secteur</dt>
<dd>Recherche</dd>
</dl>
<dl>
<dt>Client</dt>
<dd>médialab, SciencesPo</dd>
</dl>
<dl>
<dt>Prestation(s)</dt>
<dd>Design, développement front-end</dd>
</dl>
<dl>
<dt>Partenaire(s)</dt>
<dd>en collaboration avec Benjamin Benjamin Gremillon et léquipe du médialab</dd>
</dl>
<dl>
<dt>Date</dt>
<dd>2019</dd>
</dl>
</div>

View file

@ -0,0 +1,29 @@
# WYSIWYG
Projet de recherche lévolution des logiciels de graphisme en Suisse et en France (1980 - aujourd'hui)
![.](images/wysiwyg.png)
<div class="details">
<dl>
<dt>URL</dt>
<dd><a href="https://wysiwyg.ch/" target="_blank">wysiwyg.ch</a>
</dd>
</dl>
<dl>
<dt>Secteur</dt>
<dd>Recherche</dd>
</dl>
<dl>
<dt>Client</dt>
<dd>HEAD Genève, Haute école d'art et de design</dd>
</dl>
<dl>
<dt>Prestation(s)</dt>
<dd>Design, développement full-stack</dd>
</dl>
<dl>
<dt>Date</dt>
<dd>2025</dd>
</dl>
</div>

View file

@ -0,0 +1 @@
## Sélection de projets

5
src/studio-variable.md Normal file
View file

@ -0,0 +1,5 @@
Créé en juin 2025 et basé à Paris, Studio Variable conjugue **design graphique, design dinterface et développement web full-stack**. Œuvrant principalement avec le secteur de la recherche, de lécologie et de la culture, il collabore aussi bien avec de grands comptes quavec des indépendants.
Fondé par **Julie Blanc** (designer-développeuse et chercheuse en ergonomie) et **Adrien Payet** (designer-développeur issu de la philosophie), Studio Variable développe une approche formelle et technique qui concilie **ergonomie, sobriété, accessibilité et respect de la vie privée**.
Nous sommes spécialisés dans la publication à source unique en **web-to-print**. Nous privilégions les projets ouverts et engagés, avec une forte culture du logiciel libre et de lopen source.