Skip to content

Manuseq94/AUSEN

Repository files navigation

🍃 AUSEN

Sistema de Gestión de Vacaciones y Licencias

🌐 Web Oficial: www.ausen.com.ar


Python Django Docker Tailwind CSS Alpine.js Status


Dashboard Principal Light

📋 Descripción

AUSEN es una solución integral desarrollada para optimizar la gestión de recursos humanos en cooperativas y PyMES. El sistema digitaliza el proceso de solicitud, aprobación y seguimiento de vacaciones y licencias, reemplazando las planillas manuales por una interfaz web intuitiva, reactiva y automatizada.

El objetivo principal es brindar transparencia a los empleados sobre sus días disponibles y facilitar a la administración el control del ausentismo mediante métricas en tiempo real.

✨ Características Principales

  • 📊 Dashboard Interactivo: Visualización de métricas clave (ausentismo mensual, distribución diaria, empleados activos) para la toma de decisiones.
  • 📅 Motor Inteligente de Feriados: Integración con API de feriados nacionales para importación automática al calendario.
  • ⚡ Cálculo Flexible de Días: Al solicitar vacaciones, el sistema permite elegir entre descontar "Días Corridos" o "Solo Días Hábiles", detectando y saltando automáticamente fines de semana y feriados cargados en el sistema.
  • 🧮 Cálculo Automático (LCT): Algoritmo que determina los días de vacaciones correspondientes según la antigüedad del empleado (basado en la Ley de Contrato de Trabajo Argentina).
  • 👥 Gestión de Empleados: Sistema completo de administración de perfiles (ABM) con historial laboral y datos personales.
  • 📩 Notificaciones Automáticas: Envío de correos electrónicos a RRHH y supervisores cada vez que se genera o aprueba una solicitud.
  • 📄 Reportes PDF: Generación instantánea de reportes de saldos y solicitudes listos para imprimir y firmar.
  • 🎨 Interfaz Moderna y Reactiva: Diseño basado en componentes utilitarios con soporte nativo para Modo Oscuro, modales reactivos con Alpine.js y diseño adaptativo a dispositivos móviles.
  • 🔐 Seguridad: Sistema de autenticación robusto con panel de configuración protegido para administradores.

📸 Tour del Sistema

Gestión del Personal y Perfiles

Nómina de Empleados Portal del Empleado (Legajo)
Nomina Empleados Portal Empleado

Motor de Ausencias y Configuración

Cálculo Inteligente de Fechas Panel de Configuración de Sistema
Cálculo Inteligente Configuración

Herramientas y Visualización

Motor de Feriados Interfaz Adaptativa (Modo Oscuro)
Gestión de Feriados Modo Oscuro

Login Screen

Pantalla de Acceso Seguro (Autenticación)


🛠️ Stack Tecnológico

  • Backend: Python 3.10, Django Framework 5.x.
  • Frontend: HTML5, CSS3, Tailwind CSS 3.x (Compilado vía PostCSS), Alpine.js 3.x, JavaScript.
  • Servidor de Producción: Gunicorn (WSGI HTTP Server).
  • Contenedores: Docker (Imagen base python:3.10-slim optimizada con dependencias nativas para Cairo).
  • Librerías Clave: holidays (Cálculo de fechas), xhtml2pdf / pycairo (Generación de reportes PDF).
  • Base de Datos: PostgreSQL (Producción en Neon.tech) / SQLite (Local).
  • Gráficos y Calendarios: Chart.js, FullCalendar.
  • Despliegue e Infraestructura: Render (Web Service basado en Docker + WhiteNoise para estáticos).
  • Control de Versiones: Git & GitHub.

🚀 Instalación y Desarrollo Local

Opción A: Desarrollo Local con Entorno Virtual 💻

  1. Crear y activar entorno virtual
    python -m venv venv

En Windows:

venv\Scripts\activate

En Linux/Mac:

source venv/bin/activate

  1. Instalar dependencias de Python
    pip install -r requirements.txt
    
  2. Instalar dependencias Frontend y compilar estilos
    npm install
    npm run build:css
    
  3. Configurar variables de entorno Crea un archivo .env en la raíz del proyecto (puedes copiar el .env.example) y configura tus claves:
    SECRET_KEY=tu_clave_secreta_aqui
    DEBUG=True
    EMAIL_HOST_PASSWORD=tu_clave_app_gmail
    
  4. Migrar base de datos y correr servidor
    python manage.py migrate
    python manage.py runserver
    

Opción B: Despliegue Rápido con Docker 🐳

Al estar el proyecto dockerizado, no necesitas preocuparte por instalar dependencias locales de C (requeridas por pycairo) ni versiones específicas de Python/Node.

  1. Construir y levantar el contenedor
   docker build -t ausen-app .
   docker run -d -p 8000:8000 --env-file .env ausen-app



## 👤 Autor

**Emanuel Sequeira**
* Full Stack Developer
* [LinkedIn](https://www.linkedin.com/in/emanuel-sequeria-a8360b231?utm_source=share_via&utm_content=profile&utm_medium=member_ios)
* [GitHub](https://github.com/Manuseq94)

---
<div align="center">
  <sub>Desarrollado con ❤️ para la gestión eficiente de equipos.</sub>
</div>

About

🍃 Sistema integral de gestión de vacaciones y licencias para equipos de trabajo. Desarrollado con Django, PostgreSQL y Docker.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages