- Flask/SQLAlchemy app with profile, dashboard, recommendations - AI crawl pipeline (GPT-4o) with admin review workflow - 14 curated health sources (RSS + index crawling) - Production config: env vars, Gunicorn, systemd, nginx - deploy/ scripts for VPS setup and updates Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
52 lines
2.1 KiB
HTML
52 lines
2.1 KiB
HTML
{% extends "base.html" %}
|
|
{% block title %}Connexion — OpenCare{% endblock %}
|
|
{% block content %}
|
|
<div class="container py-5">
|
|
<div class="row justify-content-center">
|
|
<div class="col-md-5 col-lg-4">
|
|
<div class="auth-card card border-0 shadow">
|
|
<div class="card-body p-4 p-md-5">
|
|
<div class="text-center mb-4">
|
|
<div class="auth-icon-wrap mb-3">
|
|
<i class="fas fa-heartbeat text-primary fa-2x"></i>
|
|
</div>
|
|
<h2 class="h4 fw-bold">Connexion</h2>
|
|
<p class="text-muted small">Accédez à vos recommandations personnalisées</p>
|
|
</div>
|
|
<form method="POST" novalidate>
|
|
<div class="mb-3">
|
|
<label class="form-label fw-semibold">Email</label>
|
|
<div class="input-group">
|
|
<span class="input-group-text bg-light border-end-0">
|
|
<i class="fas fa-envelope text-muted"></i>
|
|
</span>
|
|
<input type="email" name="email" class="form-control border-start-0 ps-0"
|
|
placeholder="votre@email.com" required autocomplete="email">
|
|
</div>
|
|
</div>
|
|
<div class="mb-4">
|
|
<label class="form-label fw-semibold">Mot de passe</label>
|
|
<div class="input-group">
|
|
<span class="input-group-text bg-light border-end-0">
|
|
<i class="fas fa-lock text-muted"></i>
|
|
</span>
|
|
<input type="password" name="password" class="form-control border-start-0 ps-0"
|
|
placeholder="••••••••" required autocomplete="current-password">
|
|
</div>
|
|
</div>
|
|
<button type="submit" class="btn btn-primary w-100 btn-lg fw-semibold">
|
|
<i class="fas fa-sign-in-alt me-2"></i>Se connecter
|
|
</button>
|
|
</form>
|
|
<hr class="my-4">
|
|
<p class="text-center text-muted small mb-0">
|
|
Pas encore de compte ?
|
|
<a href="{{ url_for('register') }}" class="fw-semibold">Créer un compte</a>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|