aerogramme.deuxfleurs.fr/templates/index.html

231 lines
14 KiB
HTML
Executable file
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{% extends "base.html" %}
{% block title %}
Aerogramme - Resilient open-source IMAP server with built-in encryption
{% endblock title %}
{% block content %}
<section class="section" id="home-section">
<div>
<div class="flex flex-col items-center justify-center py-12 px-8 md:px-12 xl:px-0">
<h1 class="hidden">{{config.extra.organization.name}}</h1>
<img src="{{ config.extra.organization.logo }}" width="800" alt="{{config.extra.organization.name}}"/>
<p class="text-gray-500 leading-10 pt-4 text-xl text-center">{{ config.extra.organization.description }}</p>
<div class="flex items-center justify-center space-x-2 md:space-x-4 py-4">
<a
href="{{ config.base_url }}/download/"
title="Aerogramme releases"
class="group flex items-center justify-center space-x-1 font-semibold shadow hover:shadow-lg px-4 py-3 rounded text-white transition-all duration-500 bg-gradient-to-tl from-aerogramme-blue via-blue-500 to-blue-300 bg-size-200 bg-pos-0 hover:bg-pos-100">
<svg class="w-6 h-6 animate-pulse" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 16a4 4 0 01-.88-7.903A5 5 0 1115.9 6L16 6a5 5 0 011 9.9M9 19l3 3m0 0l3-3m-3 3V10"></path></svg>
<span class="inline text-sm md:text-base">Download</span>
</a>
<a
href="/documentation/quick-start/"
title="Get started with the documentation"
class="group flex items-center justify-center space-x-1 font-semibold shadow hover:shadow-lg px-4 py-3 rounded text-white transition-all duration-500 bg-gradient-to-tl from-gray-400 via-gray-500 to-gray-400 bg-size-200 bg-pos-0 hover:bg-pos-100">
<svg class="w-6 h-6 animate-pulse" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 6.253v13m0-13C10.832 5.477 9.246 5 7.5 5S4.168 5.477 3 6.253v13C4.168 18.477 5.754 18 7.5 18s3.332.477 4.5 1.253m0-13C13.168 5.477 14.754 5 16.5 5c1.747 0 3.332.477 4.5 1.253v13C19.832 18.477 18.247 18 16.5 18c-1.746 0-3.332.477-4.5 1.253"></path></svg>
<span class="inline text-sm md:text-base">Get Started</span>
</a>
</div>
<div class="max-w-7xl mx-auto grid grid-cols-1 md:grid-cols-3 gap-x-32 py-12">
<a href="{{config.base_url}}/documentation/connect/imap/" class="group flex flex-col items-center justify-center p-2">
<img src="{{ get_url(path='icons/mailbox.svg') }}" class="h-[256px] transform group-hover:translate-y-2 transition duration-500">
<span class="text-xl text-gray-700 font-semibold mt-4 transform group-hover:-translate-y-1 transition duration-500 whitespace-nowrap">Mailbox</span>
</a>
<a href="{{config.base_url}}/documentation/connect/caldav/" class="group flex flex-col items-center justify-center p-2">
<img src="{{ get_url(path='icons/calendar.svg') }}" class="h-[256px] transform group-hover:translate-y-2 transition duration-500">
<span class="text-xl text-gray-700 font-semibold mt-4 transform group-hover:-translate-y-1 transition duration-500 whitespace-nowrap">Calendar (coming soon)</span>
</a>
<a href="{{config.base_url}}/documentation/connect/carddav/" class="group flex flex-col items-center justify-center p-2">
<img src="{{ get_url(path='icons/contacts.svg') }}" class="h-[256px] transform group-hover:translate-y-2 transition duration-500">
<span class="text-xl text-gray-700 font-semibold mt-4 transform group-hover:-translate-y-1 transition duration-500 whitespace-nowrap">Contacts (coming later)</span>
</a>
</div>
</div>
<div class="w-full flex flex-col items-center justify-center border-b">
<div id="mailbox-about" class="w-full shadow-lg mx-auto flex flex-col lg:flex-row items-center justify-around lg:space-x-12 py-4 text-sm text-gray-700 border-t">
<p class="text-aerogramme-blue text-2xl tracking-wide">Storing your data as an encrypted log</p>
</div>
<div id="mailbox-container" class="relative w-full shadow-inner border-b">
<div class="absolute top-0 left-1/2 transform -translate-x-1/2 w-16 overflow-hidden inline-block">
<div class="h-8 w-8 bg-white -rotate-45 transform origin-top-left shadow-md"></div>
</div>
</div>
<div id="map-legend-container" class="max-w-7xl mx-auto flex flex-col lg:flex-row items-center justify-around lg:space-x-12 py-2 text-sm text-gray-700">
<div>
<p class="text-base text-gray-600">Each mailbox is represented as an encrypted, sequential log of events</p>
</div>
<div class="flex items-center space-x-2">
<img class="select-none" src="{{ get_url(path='icons/mailop.svg') }}" width="48">
<span>Add or remove an email</span>
</div>
<div class="flex items-center space-x-2">
<img class="select-none" src="{{ get_url(path='icons/flagop.svg') }}" width="48">
<span>Add or remove a flag (like seen/unseen)</span>
</div>
</div>
</div>
<div class="grid grid-cols-1 xl:grid-cols-2 gap-x-0 xl:gap-x-12 gap-y-24 text-aerogramme-gray font-light bg-gray-100 py-12 px-4 md:px-0 w-full shadow-inner">
<div class="flex flex-col items-center justify-start space-y-2">
<h2 class="mb-2 text-xl text-center md:text-2xl font-bold text-aerogramme-blue leading-5">Goals</h2>
<div class="w-8 h-1 bg-aerogramme-blue"></div>
<p class="text-center leading-5 italic text-lg">Aerogramme log design enables the following properties:</p>
<ul class="list-style-none font-semibold flex flex-col items-center justify-center py-4">
<li class="py-1.5 flex flex-col items-center justify-center">
<span>Privacy friendly</span>
<p class="font-normal text-center">Encrypted at the user level</p>
</li>
<div class="w-2 h-2 rounded-full bg-aerogramme-blue"></div>
<li class="py-1.5 flex flex-col items-center justify-center">
<span>Compatible</span>
<p class="font-normal text-center">Compatibility with existing protocols is kept. </p>
</li>
<div class="w-2 h-2 rounded-full bg-aerogramme-blue"></div>
<li class="py-1.5 flex flex-col items-center justify-center">
<span>Easy to operate</span>
<p class="font-normal text-center">Running mutliple instance is easy, no possible mailbox conflicts</p>
</li>
<div class="w-2 h-2 rounded-full bg-aerogramme-blue"></div>
<li class="py-1.5 flex flex-col items-center justify-center text-center">
Highly resilient<br>
<div class="font-normal">
<span>datacenter failures</span>,
<span>sysadmin failures</span>,
</div>
</li>
</ul>
</div>
<div class="flex flex-col items-center justify-start space-y-2">
<h2 class="mb-2 text-xl text-center md:text-2xl font-bold text-aerogramme-blue leading-5">Keeping requirements low</h2>
<div class="w-8 h-1 bg-aerogramme-blue"></div>
<p class="text-center leading-5 italic text-lg">
We worked hard to keep requirements as low as possible:
</p>
<ul class="text-center list-style-none flex flex-col space-y-2 justify-start py-4">
<li class="flex flex-col md:flex-row items-center justify-start">
<div class="flex items-center space-x-2 w-max whitespace-nowrap bg-gray-200 shadow-inner py-0.5 px-1.5 rounded-md">
<img src="{{ get_url(path='icons/cpu.svg') }}" width="24">
<span class="font-normal">CPU</span>
</div>
<span class="px-2">Any x86_64 CPU from the last 10 years, ARMv7 or ARMv8</span>
</li>
<li class="flex flex-col md:flex-row items-center justify-start">
<div class="flex items-center space-x-2 w-max whitespace-nowrap bg-gray-200 shadow-inner py-0.5 px-1.5 rounded-md">
<img src="{{ get_url(path='icons/ram.svg') }}" width="24">
<span class="font-normal">RAM</span>
</div>
<span class="px-2">1 GB</span>
</li>
<li class="flex flex-col md:flex-row items-center justify-start">
<div class="flex items-center space-x-2 w-max whitespace-nowrap bg-gray-200 shadow-inner py-0.5 px-1.5 rounded-md">
<img src="{{ get_url(path='icons/disk.svg') }}" width="24">
<span class="font-normal">Disk space</span>
</div>
<span class="px-2">At least 16 GB</span>
</li>
<li class="flex flex-col md:flex-row items-center justify-start">
<div class="flex items-center space-x-2 w-max whitespace-nowrap bg-gray-200 shadow-inner py-0.5 px-1.5 rounded-md">
<img src="{{ get_url(path='icons/network.svg') }}" width="24">
<span class="font-normal">Network</span>
</div>
<span class="px-2">200 ms or less, 50 Mbps or more</span>
</li>
<li class="flex flex-col items-center md:items-start justify-center">
<div class="flex items-center space-x-2 w-max whitespace-nowrap bg-gray-200 shadow-inner py-0.5 px-1.5 rounded-md">
<img src="{{ get_url(path='icons/hardware.svg') }}" width="24">
<span class="font-normal">Heterogeneous hardware</span>
</div>
<span class="px-2">Build a cluster with whatever second-hand machines are available</span>
</li>
</ul>
</div>
<div class="flex flex-col items-center justify-start space-y-2 px-6 xl:px-0">
<h2 class="mb-2 text-xl text-center md:text-2xl font-bold text-aerogramme-blue leading-5">It works with your email client</h2>
<div class="w-8 h-1 bg-aerogramme-blue"></div>
<p class="text-center leading-5 italic pb-4 text-lg">
We built Garage to suit your existing infrastructure:
</p>
<p class="font-normal">
Garage implements the Amazon S3 API<br>and thus is already compatible with many applications.
</p>
<ul class="grid grid-cols-3 gap-6 py-4 px-8">
<li class="flex items-center justify-start">
<a href="https://nextcloud.com/" target="_blank" title="Nextcloud">
<img class="h-20 w-20" src="{{ get_url(path='images/nextcloud-logo.svg') }}" alt="Nextcloud">
</a>
</li>
<li class="flex items-center justify-start">
<a href="https://element.io/" target="_blank" title="Matrix">
<img class="h-20 w-20" src="{{ get_url(path='images/matrix-logo.svg') }}" alt="Matrix">
</a>
</li>
<li class="flex items-center justify-start">
<a href="https://cyberduck.io/" target="_blank" title="Cyberduck">
<img class="w-20" src="{{ get_url(path='images/cyberduck-logo.png') }}" alt="Cyberduck">
</a>
</li>
<li class="flex items-center justify-start">
<a href="https://mastodon.social/" target="_blank" title="Mastodon">
<img class="h-20 w-20" src="{{ get_url(path='images/mastodon-logo.svg') }}" alt="Mastodon">
</a>
</li>
<li class="flex items-center justify-start">
<a href="https://rclone.org/" target="_blank" title="Rclone">
<img class="h-20 w-20" src="{{ get_url(path='images/rclone-logo.svg') }}" alt="Rclone">
</a>
</li>
<li class="flex items-center justify-start">
<a href="https://joinpeertube.org/" target="_blank" title="PeerTube">
<img class="h-20 w-20" src="{{ get_url(path='images/peertube-logo.svg') }}" alt="PeerTube">
</a>
</li>
</ul>
</div>
<div class="flex flex-col items-center justify-start space-y-2 px-6 xl:px-0">
<h2 class="mb-2 text-xl text-center md:text-2xl font-bold text-aerogramme-blue leading-5">Standing on the shoulders of giants</h2>
<div class="w-8 h-1 bg-aerogramme-blue"></div>
<p class="text-center leading-5 italic text-lg">
Garage leverages insights from recent research in distributed systems:
(add: Bayou)
</p>
<ul class="text-center list-style-none flex flex-col items-center py-4">
<li>
<a target="_blank" href="https://dl.acm.org/doi/abs/10.1145/1323293.1294281" class="font-semibold hover:text-aerogramme-blue">Dynamo: Amazons Highly Available Key-value Store</a>
by DeCandia et al.
</li>
<li>
<a target="_blank" href="https://hal.inria.fr/inria-00609399v1" class="font-semibold hover:text-aerogramme-blue">Conflict-Free Replicated Data Types</a>
by Shapiro et al.
</li>
<li>
<a target="_blank" href="https://www.usenix.org/conference/nsdi16/technical-sessions/presentation/eisenbud" class="font-semibold hover:text-aerogramme-blue">Maglev: A Fast and Reliable Software Network Load Balancer</a>
by Eisenbud et al.
</li>
</ul>
</div>
</div>
<div class="w-full flex flex-col items-center justify-center shadow-inner">
<div class="px-8 py-24 space-y-8 text-aerogramme-gray max-w-4xl mx-auto">
<h2 class="text-2xl text-aerogramme-blue font-semibold">Sponsors and funding</h2>
<p>The <a class="text-aerogramme-blue underline" href="https://deuxfleurs.fr/" target="_blank">Deuxfleurs association</a>
has received a grant from <a class="text-aerogramme-blue underline" href="https://pointer.ngi.eu/" target="_blank">NGI POINTER</a>,
to fund 3 people working on Garage full-time for a year : from October 2021 to September 2022.</p>
<p>If you want to fund Garage development past its initial grant,
either through donation or support contract,
please <a class="text-aerogramme-blue underline" href="mailto:{{config.extra.social.email}}">get in touch with us</a></p>
<img src="{{ get_url(path='images/ngi-pointer-eu.png') }}" class="w-2/3 mx-auto" alt="NGI Pointers">
<p class="italic">This project has received funding from the European Union's Horizon 2021 research and innovation programme
within the framework of the NGI-POINTER Project funded under grant agreement N° 871528.</p>
</div>
</div>
</div>
</section>
{% endblock %}