LibGenWebApp es una interfaz web para la API de LibGen desarrollada por Harrison Broadbent. Esta aplicación permite buscar libros y artículos en la biblioteca de LibGen de manera amigable y eficiente. La aplicación está en desarrollo continuo y se agradece mucho el trabajo y aporte de Harrison Broadbent.
- Búsqueda de libros y artículos por autor y título.
- Filtros avanzados de búsqueda por idioma, año, y formato.
- Historial de búsquedas del usuario.
- Modo oscuro y modo claro.
- Restablecimiento de contraseña por correo electrónico con tokens válidos por 30 minutos.
-
Clonar el repositorio
git clone https://github.com/yourusername/LibGenWebApp.git cd LibGenWebApp
-
Crear y activar un entorno virtual
python -m venv venv source venv/bin/activate # En Windows: venv\Scripts\activate
-
Instalar las dependencias
pip install -r requirements.txt
-
Configurar las variables de entorno
- Crea un archivo
.env
en el directorio raíz del proyecto y agrega las siguientes líneas:
# Flask FLASKPORT=5000 SQLALCHEMY_DATABASE_URI='sqlite:///site.db' FLASK_DOMAIN=http://localhost:{FLASKPORT} SECRET_KEY=your-generated-secret-key DEBUG=False # Admin credentials ADMIN_USERNAME='admin' ADMIN_EMAIL='[email protected]' ADMIN_PASSWORD='admin' # SMTP configuration MAIL_SERVER=smtp.example.com MAIL_PORT=587 MAIL_USE_TLS=True MAIL_USE_SSL=False MAIL_USERNAME=[email protected] MAIL_PASSWORD=your-password MAIL_DEFAULT_SENDER=[email protected]
- Crea un archivo
-
Generar la clave secreta
- Ejecuta el script
generate_secret_key.py
y copia la clave generada en el archivo.env
:
python generate_secret_key.py
- Añade la línea
SECRET_KEY=your-generated-secret-key
en tu archivo.env
.
- Ejecuta el script
-
Inicializar la base de datos
flask db init flask db migrate -m "Initial migration." flask db upgrade
-
Ejecutar la aplicación
flask run
LibGenWebApp/
├── app.py
├── routes.py
├── models.py
├── forms.py
├── mail.py
├── loadadmin.py
├── generate_secret_key.py
├── templates/
│ ├── base.html
│ ├── index.html
│ ├── login.html
│ ├── register.html
│ ├── reset_request.html
│ ├── reset_token.html
│ ├── authorsearch.html
│ ├── titlesearch.html
│ ├── results.html
│ ├── history.html
├── static/
│ ├── css/
│ │ └── styles.css
│ ├── js/
│ │ └── theme.js
│ └── images/
│ └── logo.png
├── .env
├── requirements.txt
├── README.md
Nombre | Valor por Defecto | Descripción |
---|---|---|
FLASKPORT |
5000 |
Puerto en el que se ejecuta la aplicación Flask. |
SQLALCHEMY_DATABASE_URI |
sqlite:///site.db |
URI de la base de datos. |
FLASK_DOMAIN |
http://localhost:{FLASKPORT} |
Dominio de la aplicación Flask. |
SECRET_KEY |
your-generated-secret-key |
Clave secreta para la aplicación Flask. |
DEBUG |
False |
Modo de depuración de Flask. |
ADMIN_USERNAME |
admin |
Nombre de usuario del administrador por defecto. |
ADMIN_EMAIL |
[email protected] |
Correo electrónico del administrador por defecto. |
ADMIN_PASSWORD |
admin |
Contraseña del administrador por defecto. |
MAIL_SERVER |
smtp.example.com |
Servidor SMTP para enviar correos. |
MAIL_PORT |
587 |
Puerto del servidor SMTP. |
MAIL_USE_TLS |
True |
Usar TLS para el servidor SMTP. |
MAIL_USE_SSL |
False |
Usar SSL para el servidor SMTP. |
MAIL_USERNAME |
[email protected] |
Nombre de usuario para el servidor SMTP. |
MAIL_PASSWORD |
your-password |
Contraseña para el servidor SMTP. |
MAIL_DEFAULT_SENDER |
[email protected] |
Dirección de correo del remitente por defecto. |
La clave secreta (SECRET_KEY
) es fundamental para la seguridad de tu aplicación Flask. Se utiliza para firmar cookies, tokens y otras tareas de seguridad. Asegúrate de generar una clave secreta segura usando el script generate_secret_key.py
y guardarla en el archivo .env
para que no se exponga accidentalmente en el código fuente.
Este proyecto se basa en la API de LibGen desarrollada por Harrison Broadbent. Agradecemos enormemente su trabajo y contribución.
¡Gracias por usar LibGenWebApp!