flask-project-base-template
es un punto de partida bien estructurado para proyectos web con Flask. Proporciona una organización clara de carpetas, rutas y archivos de configuración, templa
- Configuración de base de datos.
- Soporte para pruebas.
- Una base sólida para comenzar rápidamente y desarrollar aplicaciones web de forma eficiente.
- Manejo de rutas
- Manejo de rutas no encontradas con
status 404
- Template base e integración con
include
yurl_for
. - Manejo de archivos estáticos.
- Modularidad mediante el uso de
__init__.py
. - Estructura más modular y organizada, separando el código en carpetas específicas:
routers/
: Aquí se definen todas las rutas de la aplicación.controllers/
: Se gestionan las funciones según los módulos existentes (ejemplo:controllerUser.py
,controllerHome.py
, etc.).
flask-project-base-template/
│
├── app/
│ ├── controllers/
│ ├── routers/
│ ├── static/
│ ├── templates/
│ │ ├── api/
│ │ ├── bases/
│ │ ├── pages/
│ │ └── index.html
│ ├── __init__.py
│ ├── app.py
│ ├── requirements.txt
│ └── config.py
│
├── tests/
│ ├── test_basic.py
│ └── test_routes.py
│
├── .gitignore
├── README.md
└── vercel.json
El archivo __init__.py
dentro de la carpeta app/
tiene la función de inicializar y configurar la aplicación Flask, preparando todo lo necesario para que la aplicación se ejecute correctamente. Además sirve como el punto de entrada para crear y configurar la instancia de la aplicación.
La función create_app()
es el punto de entrada para la creación de la aplicación, además retorna la instancia de la aplicación Flask, que es la que se usará para ejecutar el servidor o desplegar la app.
- Se inicializa la aplicación Flask con configuraciones como el directorio de archivos estáticos y templates.
- Se carga la configuración desde el archivo
config.py
(en este caso,DevelopmentConfig
). - Se registran las rutas de la aplicación importando y ejecutando la función
'registrar_rutas'
del archivo'routers'
. - Se configura el manejo de errores
404
, redirigiendo a la ruta de inicio.
-
Archivo
controllers/__init__.py
:
Está configurado para exportar todas las funciones definidas en el archivohandlers.py
, permitiendo que estén disponibles directamente desdecontrollers
al importar. -
Archivo
routers/__init__.py
:
Está configurado para exportar todas las rutas registradas en el archivorutas.py
, facilitando su importación directa desderouters
.
1. Crear un entorno virtual:
Si no sabes cómo hacerlo, aquí tienes una guía paso a paso.
No olvides activar tu entorno virtual.
2. Instalar las dependencias del proyecto:
Ejecuta el siguiente comando para instalar todas las librerías necesarias:
pip install -r requirements.txt
3. Ejecutar el proyecto
python app.py
4. Visitar la URL http://localhost:8000
- Ayuda a difundir este proyecto compartiéndolo con otros 📢
- Invítame una cerveza 🍺 o un café ☕ (Paypal: iamdeveloper86@gmail.com)
- Agradece públicamente 🤓, ¡me alegrará saberlo!
- Y no olvides dejar tu estrella ⭐ en el repositorio... ¡dicen que trae buena suerte! 🍀