Flask & Bootstrap juntos

Michelle Mesquita
3 min readJan 19, 2024

--

Olá, pessoal

Tudo bem?

Hoje, falarei um pouco da utilização do Bootstrap com Flask e ambos funcionam muito bem juntos ✨

Qual o motivação para utilizar os dois em conjunto?

Flask é um framework bem compacto que serve para eu desenvolver minhas ferramentas em Python. Enquanto o Bootstrap é ótimo framework frontend! Assim, eu não preciso me preocupar muito com frontend da aplicação, pois já vem com várias funções prontas 😊

A ideia desse tutorial foi utilizar o Bootswatch, pois possui vários templates gratuitos e muito bonitos!

Deixarei o meu Github, com o projeto atualizado com template abaixo

1 — Instalar lib bootstrap-flask

pip install bootstrap-flask

Ponto importante: usaremos essa lib pois a mesma já possui a versão do Bootstrap 4 e 5

2 — Criar arquivo base.html

Você usará o base para extender a todas as páginas da aplicação.

Nesse arquivo que virá a parte importante: adicionar o template escolhido no Bootswatch

<!doctype html>
<html lang="en">
<head>
{% block head %}
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

{% block styles %}
<!-- Bootstrap CSS -->
<link rel="stylesheet" type="text/css"
href="{{url_for('static', filename='css/bootstrap.min.css')}}">
{% endblock %}


{% endblock %}
</head>
<body>
<!-- Your page content -->
{% block content %}{% endblock %}

</body>

</html>

Nesse código, podemos observar em filename, que adicionei o Bootstrap na pasta css dentro de static

3- Adicionar Booststrap para pasta static

Assim, ele será lido diretamente pelo Flask

4- Cada nova página, será necessário importar o base.html

Assim, todas as páginas que tiverem esse arquivo, usarão esse mesmo frontend

{% extends "base.html" %}

{% block content %}

<!doctype html>
<html>
<head>
<title>Report</title>
<style>
body {background: #f9f9f9 !important}
.inner{
display: inline-block;}
</style>

</head>
<body>
</body>
</html>

{% endblock %}

Como resultado, você poderá olhar na página os botões, barras e formulários com frontend pronto ✅

--

--