Ingen beskrivning

GeoShaPoH 42ecde5148 Mejora la visualización del nombre del archivo al agregar un tooltip con el nombre completo y se implementan estilos para truncar nombres largos en la interfaz. 5 månader sedan
static 42ecde5148 Mejora la visualización del nombre del archivo al agregar un tooltip con el nombre completo y se implementan estilos para truncar nombres largos en la interfaz. 5 månader sedan
templates 42ecde5148 Mejora la visualización del nombre del archivo al agregar un tooltip con el nombre completo y se implementan estilos para truncar nombres largos en la interfaz. 5 månader sedan
.gitignore a06bcbc2e4 Init 5 månader sedan
README.md 734766daf3 Actualizar 'README.md' 5 månader sedan
SETUP.md a06bcbc2e4 Init 5 månader sedan
app.py e7f8bce21a Actualiza la lógica para generar la URL de descarga utilizando un argumento de línea de comandos para el protocolo HTTPS. 5 månader sedan
env.example a06bcbc2e4 Init 5 månader sedan
requirements.txt a06bcbc2e4 Init 5 månader sedan
setup-proxy.sh a06bcbc2e4 Init 5 månader sedan
temp.mysite.conf a06bcbc2e4 Init 5 månader sedan

README.md

HokoriTemp - Servidor de Archivos Temporales

Una aplicación web en Flask para subir y compartir archivos de forma temporal, similar a filebin pero con funcionalidades adicionales.

Características

  • Subida de archivos: Interfaz drag & drop para subir archivos
  • Enlaces temporales: Los archivos expiran automáticamente después de 24 horas
  • Gestión de enlaces: Página para ver y gestionar todos los enlaces activos del usuario
  • Almacenamiento local: Los enlaces se guardan en localStorage del navegador
  • Interfaz moderna: Diseño responsive con Tailwind CSS

Instalación

  1. Clonar el repositorio:

    git clone https://git.checkthis.space/geoshapoh/hokoritemp.git
    cd hokoritemp
    
  2. Activar el entorno virtual:

    # Windows
    .\venv\Scripts\Activate.ps1
    
    # Linux/Mac
    source venv/bin/activate
    
  3. Instalar dependencias:

    pip install -r requirements.txt
    

Uso

Ejecutar el servidor

# Ejecutar con configuración por defecto (localhost:5000)
python app.py

# Ejecutar en puerto específico
python app.py --port 8080

# Ejecutar en host específico
python app.py --host 0.0.0.0 --port 8080

# Ejecutar en modo debug
python app.py --debug

# Ejecutar con HTTPS (requiere certificados)
python app.py --https

Argumentos disponibles

  • --host: Host del servidor (default: 127.0.0.1)
  • --port: Puerto del servidor (default: 5000)
  • --https: Usar HTTPS
  • --debug: Modo debug

Estructura del proyecto

hokoritemp/
├── app.py                 # Aplicación principal Flask
├── requirements.txt       # Dependencias del proyecto
├── uploads/              # Carpeta donde se guardan los archivos
├── templates/            # Plantillas HTML
│   ├── index.html       # Página principal de subida
│   └── view.html        # Página de gestión de enlaces
├── static/               # Archivos estáticos
│   ├── styles.css       # Estilos CSS
│   ├── app.js          # JavaScript principal
│   └── view.js         # JavaScript para vista de enlaces
└── README.md            # Este archivo

Funcionalidades

Página Principal (/)

  • Interfaz drag & drop para subir archivos
  • Límite de 16MB por archivo
  • Generación automática de enlaces temporales
  • Guardado automático en localStorage

Página de Enlaces (/view)

  • Lista todos los enlaces guardados en localStorage
  • Muestra tiempo restante hasta expiración
  • Permite copiar y abrir enlaces
  • Filtra automáticamente enlaces expirados

API Endpoints

  • POST /upload: Subir archivo
  • GET /download/<file_id>: Descargar archivo
  • GET /api/links: Obtener enlaces (para futuras implementaciones)

Configuración

Variables de entorno

Puedes crear un archivo .env con las siguientes variables:

SECRET_KEY=tu_clave_secreta_aqui
MAX_CONTENT_LENGTH=16777216
UPLOAD_FOLDER=uploads

Límites

  • Tamaño máximo de archivo: 16MB
  • Tiempo de expiración: 24 horas
  • Tipos de archivo: Todos los tipos permitidos

Desarrollo

Agregar nuevas funcionalidades

  1. Modifica app.py para agregar nuevas rutas
  2. Actualiza las plantillas HTML según sea necesario
  3. Agrega nuevas dependencias a requirements.txt

Personalización

  • Cambia el tiempo de expiración en app.py (línea 58)
  • Modifica el límite de tamaño en app.py (línea 12)
  • Personaliza el diseño editando las plantillas HTML

Seguridad

  • Los archivos se guardan con nombres únicos (UUID)
  • Se usa secure_filename para sanitizar nombres de archivo
  • Los archivos expiran automáticamente
  • No se almacenan metadatos sensibles

Licencia

Este proyecto está bajo la licencia MIT. Ver el archivo LICENSE para más detalles.