T32VGC7UMFWK7LOMYWDRVQT62R3C2D7FLCE6RFVPQCJCU6E2HXLQC
name = "site"
account_id = "9340ee3045086a3069cd02eebfc36e80"
main = "./.cloudflare/worker.js"
site.bucket = "./.cloudflare/public"
build.command = "npm run build"
env.dev.build.command = "npm run build-staging"
compatibility_date = "2021-11-12"
[route]
pattern = "coturnix.fr/*"
zone_name = "coturnix.fr"
[env.dev.route]
pattern = "d.coturnix.fr/*"
zone_name = "coturnix.fr"
import { sveltekit } from '@sveltejs/kit/vite';
/** @type {import('vite').UserConfig} */
const config = {
plugins: [sveltekit()],
css: {
preprocessorOptions: {
scss: {
additionalData: '@use "src/variables.scss" as *;'
}
}
}
};
export default config;
{
"extends": "./.svelte-kit/tsconfig.json",
"compilerOptions": {
"allowJs": true,
"checkJs": true,
"esModuleInterop": true,
"forceConsistentCasingInFileNames": true,
"resolveJsonModule": true,
"skipLibCheck": true,
"sourceMap": true,
"strict": true,
"typeRoots": ["node_modules/@types", "typings"]
}
}
import adapter from '@sveltejs/adapter-cloudflare-workers';
import preprocess from 'svelte-preprocess';
import { vitePreprocess } from '@sveltejs/kit/vite';
/** @type {import('@sveltejs/kit').Config} */
const config = {
// Consult https://github.com/sveltejs/svelte-preprocess
// for more information about preprocessors
preprocess: [
vitePreprocess({
script: true,
style: true,
})
],
kit: {
adapter: adapter(),
csp: {
directives: {
'script-src': ['self', 'https://coturnix.fr/' ],
},
mode: 'auto',
},
paths: {
relative: false
}
}
};
export default config;
$primary: #b81413;
$secondary: #de601e;
$light: #f0f0f0;
$danger: #de5e1c;
$warning: #ffbf00;
$navbar-light-color: #b81413;
$navbar-dark-color: #b81413;
$navbar-light-active-color: black;
$navbar-dark-active-color: white;
$nav-pills-link-active-color: #b81413;
$nav-pills-link-active-bg: #ddd;
$min-contrast-ratio: 3.5;
$border-color: #bdc0c4;
$color-mode-type: media-query;
/* Variables and mixins declared here will be available in all other SCSS files */
@import '../node_modules/bootstrap/scss/functions'; /* Override Bootstrap's variables here */
@import '../node_modules/bootstrap/scss/variables';
@import '../node_modules/bootstrap/scss/variables-dark';
@import '../node_modules/bootstrap/scss/maps';
@import '../node_modules/bootstrap/scss/mixins';
@import '../node_modules/bootstrap/scss/utilities';
<h2>Notre solution</h2>
<h3 class="mt-5">Partage</h3>
<div class="mt-3">
Lorsque de nombreux consommateurs sont impliqués, il faut décider de la manière de partager, afin d'éviter que tout le monde consomme au même moment.
</div>
<h3 class="mt-5">Optimisation</h3>
<div class="mt-3">
Coturnix résout le problème du partage via une <strong>application mobile</strong> qui fournit à chaque participant un calendrier de disponibilité de l'électricité pour la semaine à venir, calculé en fonction de ses habitudes afin de maximiser l'utilisation de l'énergie locale. Coturnix aligne les intérêts des consommateurs (réduire leur facture d'électricité) avec ceux des producteurs (écouler un maximum de leur production).
</div>
<h3 class="mt-5">Flux financiers</h3>
<div class="mt-3">
Afin de fluidifier les échanges, nous prenons en charge les échanges financiers entre les participants, via des prélèvements automatiques. Nos algorithmes évitent aussi les conflits sur les tarifs en laissant chaque producteur choisir le tarif qu'il estime juste.
</div>
<h3 class="mt-5">Montage de projet automatique</h3>
<div class="mt-3">
Le montage de projet d'autoconsommation collective est souvent un moment confus et compliqué, qui peut engendrer des coûts importants. <a href="/communaute">Notre solution</a> permet de monter des projets automatiquement et gratuitement.
</div>
<h2>Offre pros</h2>
<div class="mt-3">
<p>Si vous êtes un professionnel des énergies renouvelables, <a href="mailto:contact@coturnix.fr">contactez-nous</a> pour déployer notre application sous votre propre marque:</p>
<ul>
<li>Application compatible App store et Google Play</li>
<li>Plateforme de gestion personnalisée à votre logo</li>
<li>Suivi de vos propres communautés en direct</li>
<li>Génération de nouveaux prospects pour votre marché</li>
</ul>
</div>
<div class="mt-3">Entrez dans le club fermé des partenaires Coturnix et profitez de l'état de l'art de l'autoconsommation collective:
<ul>
<li>Augmentez les revenus de vos clients avec les communautés</li>
<li>Partage de prospects sur les grandes communautés gérées en direct par Coturnix, communautés de communes, chaînes, organismes,</li>
<li>Formation continue sur l’autoconsommation collective,</li>
<li>Veille de mise à jour des informations tarifaires et légales,</li>
<li>Conseils personnalisés</li>
<li>Générez d’autres sources de revenu</li>
</ul>
</div>
<script>
import Cable from '../Cable.svelte'
</script>
<h2>Foire aux questions</h2>
<ul class="mt-5">
<Cable/>
<li><strong>Pourquoi les énergies renouvelables ?</strong>
<p>Pendant des décennies, le <strong>nucléaire</strong> a assuré l'indépendance énergétique de la France. C'est une énergie <strong>extrêmement dense</strong>, c'est-à-dire qu'elle nécessite très peu d'infrastructures et de matériaux au regard de la quantité d'électricité produite. C'est aussi une énergie <strong>sûre</strong>, en particulier lorsqu'elle est contrôlée par l'État. Enfin, c'est une énergie <strong>très peu carbonée</strong> (à l'exception de l'hydroélectricité, les renouvelables sont plus carbonés), et qui produit une faible quantité de déchets.</p>
<p>Cependant, la construction de nouvelles centrales, même avec les designs actuels, nécessite un <strong>investissement à très long terme</strong>. De plus, la perte de main d'œuvre qualifiée rend les <strong>coûts difficiles à prévoir</strong>, comme l'illustre le graphique suivant sur l'EPR de Flamanville (encore en construction en 2022).</p>
<div class="text-center">
<img class="w-75 m-3" style="max-width:600px" src="flamanville.svg" alt="Évolution du coût prévisionnel de construction de Flamanville entre 2006 et 2019. Le budget était de moins de 4 milliards en 2006 et de plus de 12 milliards en 2019." />
</div>
<p><a href="https://www.rte-france.com/analyses-tendances-et-prospectives/bilan-previsionnel-2050-futurs-energetiques">Comme le note d'ailleurs RTE</a>, le futur de notre réseau électrique passe donc par une <strong>production plus distribuée</strong>, ce qui le rend plus <strong>résiliente</strong>, et permet à ses utilisateurs de <strong>prévoir le coût et la disponibilité</strong> de leur énergie.</p>
<p>Notons qu'un certain nombre de <strong>technologies</strong> promettent de résoudre les différents problèmes du nucléaire, mais faute de recherche, elles ne sont <strong>pas encore utilisées à l'échelle industrielle</strong>. Leur développement éventuel ne justifie donc pas les choix de designs actuels (par exemple l'EPR).</p>
</li>
<li><strong>Doit-on dire «autoconsommation» ou «autoproduction» ?</strong>
<p>Ces deux termes désignent des <strong>objectifs différents</strong>: dans l'<strong>autoconsommation</strong>, on cherche à utiliser au maximum une production électrique locale, alors que l'<strong>autoproduction</strong> vise à satisfaire un maximum de besoins énergétiques avec une production locale. Par exemple, il est plus facile d'autoconsommer toute la production d'un plus petit panneau, et plus facile d'autoproduire pour une plus petite consommation.</p>
<p>D'un point de vue <strong>économique</strong>, un investisseur cherchera plutôt à maximiser son taux d'autoconsommation, alors qu'un consommateur optimisera plutôt son taux d'autoproduction. La recherche d'un <strong>équilibre économique</strong> implique de bien dimensionner la centrale solaire: en effet, une centrale <strong>trop grande</strong> aura un taux d'autoconsommation faible: une grande partie de l'énergie produite ne sera pas consommée. À l'inverse, une centrale <strong>trop petite</strong> demandera un engagement plus important des consommateurs tout en autoproduisant moins, ce qui peut réduire l'intérêt des consommateurs et donc aussi l'autoconsommation.</p>
<p>Du point de vue <strong>sociologique</strong>, nous avons tendance à préférer le terme de <strong>«communauté d'énergie»</strong>, qui englobe non seulement la réalité technique et économique, mais aussi les interactions que l'on observe entre les différents participants (producteurs et consommateurs, parfois les deux à la fois), qui utilisent l'énergie comme prétexte pour renforcer le lien social dans la communauté.</p>
</li>
<li><strong>Pourquoi autoconsommer plutôt que revendre ?</strong>
<p>Depuis 2000, l'État Français <a href="https://fr.wikipedia.org/wiki/%C3%89nergie_solaire_en_France#Historique">subventionne l'investissement</a> dans des centrales solaires photovoltaïques, en proposant de racheter la production à des tarifs très supérieurs aux prix du marché. La baisse continue des tarifs de rachat rend cette modalité de moins en moins avantageuse pour les investisseurs, même si le prix des panneaux solaires baisse depuis plusieurs années (voir le graphique ci-dessous).</p>
<p>De plus, l'<strong>adaptation à l'intermittence</strong> de la production solaire demande un certain <strong>temps d'apprentissage</strong>, tant par les consommateurs que par les gestionnaires d'ensembles locatifs ou de collectivités. S'engager dans l'autoconsommation dès maintenant permet d'<strong>anticiper la fin des subventions</strong>, afin de <strong>garantir une certaine autonomie</strong> face aux incertitudes des marchés de l'énergie.</p>
<div class="text-center">
<img class="w-75" style="max-width:700px" alt="Courbe du prix d'un watt-crête photovoltaïques de 1976 à 2019 montrant une baisse à peu près exponentielle du prix au fil du temps." src="solar-pv-prices.svg"/>
</div>
</li>
</ul>
<script>
import MarkdownIt from "markdown-it";
import my_markdown from "../../../../../legal/confidentialite/index.md?raw";
const md = new MarkdownIt();
</script>
{@html md.render(my_markdown)}
<script>
import MarkdownIt from "markdown-it";
import my_markdown from "../../../../legal/index.md?raw";
const md = new MarkdownIt();
</script>
{@html md.render(my_markdown)}
<slot/>
<blockquote class="blockquote mt-5">
<footer class="blockquote-footer">Adapté des <a href="https://github.com/basecamp/policies">conditions open-source de Basecamp</a> / <a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a></footer>
</blockquote>
<h2>Pourquoi créer une communauté d’énergie ?</h2>
<h3 class="mt-3">Indépendance</h3>
<div class="mt-3">
Les citoyens qui rejoignent une communauté d’énergie cherche à agir localement et à devenir moins dépendants des grands groupes de l’énergie. Coturnix est indépendant, le capital est réparti entre ses fondateurs et des structures d’investissement familiales pourvues d’une éthique forte. Aucun groupe de l’énergie n’est au capital de Coturnix ce serait contraire à nos valeurs.
</div>
<h3 class="mt-3">Transparence</h3>
<div class="mt-3">
La transparence est le principal pilier du succès. Les gens accordent une grande confiance aux communautés dès lors que les transferts d’énergie et les paiements sont réalisés en toute transparence. Coturnix est une plateforme ouverte qui délivre des rapports réguliers sur les transferts d’énergie et les coûts associés aux services.
</div>
<h3 class="mt-3">Faire ensemble du local</h3>
<div class="mt-3">Partager de l’énergie avec ses voisins, habitants, agriculteurs ou petite entreprise, c’est devenir acteur de l’économie locale. C’est entrer dans un cercle de solidarités face à une société qui cherche à isoler les individus.</div>
<div class="mt-3">Coturnix aide les citoyens à reprendre le pouvoir sur leur consommation d’énergie.</div>
<h2>Collectivités</h2>
<div class="mt-5">
Coturnix est particulièrement adaptée au cas des collectivités: les frais de montage de projet sont réduits au strict minimum, ce qui permet d'essayer l'autoconsommation collective sans risques. Notre solution de gestion des flux financiers réduit également les risques de défaut de paiement.
</div>
<div class="mt-5">
Dans les cas les plus complexes, par exemple l'orchestration entre des acteurs très différents, ou encore pour l'intégration dans un PCAET ou les interactions avec les syndicats d'énergie locaux, <a href="mailto:contact@coturnix.fr">contactez-nous</a> pour un devis répondant à notre besoin.
</div>
<div class="mt-5">
N'hésitez pas à nous contacter pour une présentation de nos références dans l'accompagnement de projets à très grande échelle, portés par des collectivités.
</div>
<script>
import Cable from '../Cable.svelte'
</script>
<h2>L'autoconsommation collective</h2>
<h3 class="mt-5">Échanges d'électricité</h3>
<div class="mt-3">
L'autoconsommation permet aux utilisateurs raccordés au réseau public d'électricité d'échanger de l'électricité. Ces échanges sont mesurés et comptabilisés par <a href="https://enedis.fr">Enedis</a> et sont déduites de la facture du consommateur.
</div>
<!-- <div class="mt-3">
L'image ci-dessous montre le fonctionnement d'une communauté: deux producteurs <em>injectent</em> de l'électricité sur le réseau, qui est comptabilisée par des compteurs d'injection. Les consommateurs qui sont déclarés comme membres de la communauté peuvent en bénéficier, en complément de leur fournisseur d'énergie habituel. Les consommations sont relevés normalement par leur compteur Linky, et Enedis déduit chaque mois la part provenant de la communauté, avant d'envoyer le relevé au fournisseur d'énergie.
</div> -->
<div class="mt-5 d-flex">
<img class="mx-auto" style="width:100%;max-width:800px" src="/autocons0.svg" alt="Schema d'une communauté d'énergie avec deux producteurs et plusieurs consommateurs, dont un immeuble, des maisons et une usine." />
</div>
<h3 class="mt-5">Rémunération</h3>
<div class="mt-3">
Les consommateurs et les producteurs doivent se mettre d'accord entre eux sur la rémunération. Coturnix utilise les meilleurs algorithmes de la théorie de l'économie pour résoudre ce problème, ce qui permet de se concentrer sur la communauté humaine autour du projet.
</div>
<h3 class="mt-5">Quelques questions</h3>
<ul class="mt-3">
<Cable/>
</ul>
<h2>À propos</h2>
<div class="mt-3">Fondée en 2017 pour offrir des services de traitement et analyse de données au service de la performance énergétique, Coturnix a regroupé dans son équipe des spécialistes de l’énergie, des mathématiques et de l’informatique pour concevoir des technologies à la pointe du marché.</div>
<li><strong>Faut-il tirer un câble entre les habitations ?</strong><p>Non: la déclaration d'une communauté ne change rien à la circulation de l'énergie dans le réseau électrique. Il est seulement nécessaire de disposer d'un compteur communicant pour participer à une communauté.</p></li>
<li><strong>Comment circulent les électrons dans une communauté ?</strong><p>Les électrons empruntent toujours le chemin le plus court: ainsi, qu'il y ait une communauté déclarée ou non, l'électricité provient dans tous les cas de la source la plus proche. Cependant, à cause de la structure des réseaux électriques, les panneaux solaires sont rarement reliés par un fil continu aux appareils électriques qui consomment leur énergie. Mais cela n'a pas beaucoup d'importance, puisque la transmission d'énergie dans un circuit électrique ne se fait de toute façon pas vraiment par la circulation des électrons entre le producteur et le consommateur, mais par les <em>champs électriques et magnétiques autour des fils</em> que cette circulation engendre (<a href="https://www.youtube.com/watch?v=bHIhgxav9LY&ab_channel=Veritasium">explication ici, en anglais</a>).</p>
<p>La déclaration d'une communauté d'énergie ne change donc absolument rien à la transmission de l'énergie dans le réseau, c'est seulement une affaire de <em>facturation</em>.</p></li>
<h1><div class="d-flex"><img class="mx-auto my-3" alt="Coturnix" src="/coturnix.svg" style="width:min(10em, 80%)" /></div></h1>
<div class="mx-auto sub">Partage d'énergie locale</div>
<div class="mt-5">
Coturnix permet de monter des projets d'<strong>autoconsommation collective</strong> simplement, rapidement et gratuitement et d'optimiser le rendement des installations grâce à une application mobile. Coturnix gère aussi les flux financiers entre les participants.
</div>
<div class="mt-5">
L'<strong>autoconsommation collective</strong> permet de vendre tout ou partie de l'électricité produite localement à ses voisins.
</div>
<h2 class="mt-5">Vous êtes consommateur d'électricité</h2>
<div class="mt-3">Pour rejoindre une communauté d'autoconsommation collective comme consommateur, il suffit d'un compteur communiquant (par exemple un compteur Linky) et d'une communauté proche de chez vous.
</div>
<h2 class="mt-5">Vous avez des panneaux photovoltaïques</h2>
<div class="mt-3">Il faut que les panneaux soient déclarés à Enedis en <em>autoconsommation collective</em> (voir votre contrat d'injection). Ensuite, utilisez <a href="/communaute/debut">notre outil automatique</a> pour créer votre communauté ou rejoindre une communauté existante proche de chez vous.</div>
<h2 class="mt-5">Nos offres commerciales</h2>
<div class="mt-3">
<a class="btn btn-outline-primary my-2" href="/collectivites">Consultez nos offres collectivités</a>
<a class="btn btn-outline-primary my-2" href="/pros">Consultez nos offres pros</a>
</div>
<style lang="scss">
h2 { font-size: 24px; }
div.sub {
color: $primary;
font-size: 20px;
}
</style>
<script lang="ts" nonce="%sveltekit.nonce%">
import '../app.scss';
import { onMount } from 'svelte'
function saison() {
let d = new Date();
let day = d.getMonth() * 31 + d.getDate();
if(day >= 11 * 31 + 21) {
return "hiver"
}
if(day >= 8 * 31 + 21) {
return "automne"
}
if(day >= 5 * 31 + 21) {
return "ete"
}
if(day >= 2 * 31 + 21) {
return "printemps"
}
return "hiver"
}
function up() {
document.getElementById("saison")?.setAttribute("style", "background-image: url('/" + saison() + ".jpg');background-size:cover;background-position:center;height:120px");
}
onMount(() => {
setInterval(up, 3600000);
up();
})
</script>
<div class="app">
<main>
<div class="row mx-0 fixed-top">
<div id="saison" class="col d-flex" style="background-image: url('/{saison()}.jpg');background-size:cover;background-position:center;height:120px">
<div class="container-md d-flex">
<div class="my-auto ms-auto">
<a class='btn btn-sm btn-primary' href="/communaute/debut">Créer ma communauté</a>
</div>
</div>
</div>
</div>
<div class="container-md d-flex flex-column p-3 pb-5" style="margin-top:120px">
<nav class="navbar mb-4">
<div class="navbar" id="navbarNav">
<ul class="navbar-nav d-flex flex-row">
<li class="nav-item mt-1 mx-2">
<a class="navbar-brand" href="/">
<img src="/coturnix-logo.svg" alt="Coturnix" width="30" height="24">
</a>
</li>
<li class="nav-item mt-1 mx-2">
<a class='nav-link' href="/autoconso">Autoconsommation</a>
</li>
<li class="nav-item mt-1 mx-2">
<a class='nav-link' href="/solution">Notre solution</a>
</li>
<li class="nav-item mt-1 mx-2">
<a class='nav-link' href="/faq">FAQ</a>
</li>
<li class="nav-item mt-1 mx-2">
<a class='nav-link' href="/apropos">À propos</a>
</li>
</ul>
</div>
</nav>
<slot />
</div>
</main>
<footer></footer>
</div>
<style lang="scss">
.app {
display: flex;
flex-direction: column;
min-height: 100vh;
}
main {
flex: 1;
display: flex;
flex-direction: column;
width: 100%;
margin: 0 auto;
box-sizing: border-box;
}
footer {
display: flex;
justify-content: center;
align-items: center;
padding: 8px;
background-color: $primary;
}
</style>
/* Write your global styles here, in SCSS syntax. Variables and mixins from the src/variables.scss file are available here without importing */ /* Import only what you need from Bootstrap */
@import 'bootstrap/scss/root';
@import 'bootstrap/scss/reboot';
@import 'bootstrap/scss/type';
@import 'bootstrap/scss/images';
@import 'bootstrap/scss/containers';
@import 'bootstrap/scss/grid';
@import 'bootstrap/scss/tables';
@import 'bootstrap/scss/forms';
@import 'bootstrap/scss/buttons';
@import 'bootstrap/scss/transitions';
@import 'bootstrap/scss/dropdown';
@import 'bootstrap/scss/button-group';
@import 'bootstrap/scss/nav';
@import 'bootstrap/scss/navbar';
@import 'bootstrap/scss/card';
@import 'bootstrap/scss/accordion';
@import 'bootstrap/scss/breadcrumb';
@import 'bootstrap/scss/pagination';
@import 'bootstrap/scss/badge';
@import 'bootstrap/scss/alert';
@import 'bootstrap/scss/progress';
@import 'bootstrap/scss/list-group';
@import 'bootstrap/scss/close';
@import 'bootstrap/scss/toasts';
@import 'bootstrap/scss/modal';
@import 'bootstrap/scss/tooltip';
@import 'bootstrap/scss/popover';
@import 'bootstrap/scss/carousel';
@import 'bootstrap/scss/spinners';
@import 'bootstrap/scss/offcanvas';
@import 'bootstrap/scss/placeholders';
@import 'bootstrap/scss/helpers';
@import 'bootstrap/scss/utilities/api';
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="%sveltekit.assets%/bootstrap-icons.css">
<meta property="og:title" content="Coturnix - partager l'énergie">
<meta property="og:image" content="https://coturnix.fr/logo.png">
<meta property="og:image:width" content="260">
<meta property="og:image:height" content="135">
<meta property="og:description" content="Solution de construction de communautés d'énergie. Nous optimisons le rendement de centrales solaires et créons des communautés humaines.">
<link href="/favicon.png" rel="icon">
<title>Partager l'énergie - Coturnix</title>
%sveltekit.head%
</head>
<body data-sveltekit-preload-data="hover">
<div style="display: contents">%sveltekit.body%</div>
</body>
<script src="%sveltekit.assets%/bootstrap.bundle.min.js"></script>
</html>
/// <reference types="@sveltejs/kit" />
/// <reference types="@sveltejs/adapter-cloudflare-workers" />
declare namespace App {
interface Platform {
env: {
}
}
}
{
"name": "site",
"version": "0.0.1",
"private": true,
"scripts": {
"dev": "vite dev",
"build": "vite build",
"build-staging": "vite build --mode staging",
"preview": "vite preview",
"test": "playwright test",
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
"lint": "prettier --plugin-search-dir . --check . && eslint .",
"format": "prettier --plugin-search-dir . --write ."
},
"devDependencies": {
"@playwright/test": "^1.31.2",
"@popperjs/core": "^2.11.7",
"@sveltejs/adapter-auto": "next",
"@sveltejs/adapter-cloudflare-workers": "^1.1.0",
"@sveltejs/kit": "^1.16.2",
"@types/bootstrap": "^5.2.6",
"@types/leaflet.fullscreen": "^1.6.1",
"@types/markdown-it": "^13.0.2",
"@typescript-eslint/eslint-plugin": "^5.55.0",
"@typescript-eslint/parser": "^5.55.0",
"bootstrap": "^5.2.3",
"eslint": "^8.36.0",
"eslint-config-prettier": "^8.7.0",
"eslint-plugin-svelte3": "^4.0.0",
"prettier": "^2.8.8",
"prettier-plugin-svelte": "^2.10.1",
"sass": "^1.59.3",
"svelte": "^3.57.0",
"svelte-check": "^3.1.4",
"svelte-preprocess": "^5.0.3",
"tslib": "^2.5.0",
"typescript": "^5.0.2",
"vite": "^4.2.1"
},
"type": "module",
"dependencies": {
"markdown-it": "^13.0.2"
}
}