Files
sistema-abogadas-litoral/README.md
T

184 lines
3.4 KiB
Markdown

# Abogadas Litoral
Aplicacion web para gestion de turnos de un estudio juridico, desarrollada con Laravel y Vite.
## Tabla de contenido
- [Tecnologias y versiones](#tecnologias-y-versiones)
- [Requisitos previos](#requisitos-previos)
- [Instalacion](#instalacion)
- [Comandos utiles](#comandos-utiles)
- [Testing](#testing)
- [Flujo de trabajo con Git](#flujo-de-trabajo-con-git)
- [Estructura principal](#estructura-principal)
- [Notas](#notas)
## Tecnologias y versiones
Versiones tomadas del proyecto actual:
- PHP: `^8.2`
- Laravel Framework: `^12.0`
- PHPUnit: `^11.5.3`
- Node.js: recomendado `>=20`
- npm: recomendado `>=10`
- Vite: `^7.0.7`
- Bootstrap: `^5.3.8`
- FullCalendar: `^6.1.20`
- Spatie Laravel Backup: `^9.3`
- DomPDF (barryvdh/laravel-dompdf): `^3.1`
Archivos fuente de versionado:
- `composer.json`
- `package.json`
## Requisitos previos
- PHP 8.2 o superior
- Composer 2.x
- Node.js y npm
- Base de datos (segun entorno):
- En `.env.example` la conexion por defecto es `sqlite`
- En `config/database.php` el fallback de Laravel esta en `mysql`
## Instalacion
### Opcion rapida (script del proyecto)
```bash
composer run setup
```
Este script ejecuta:
1. `composer install`
2. Creacion de `.env` desde `.env.example` (si no existe)
3. `php artisan key:generate`
4. `php artisan migrate --force`
5. `npm install`
6. `npm run build`
### Opcion manual
```bash
composer install
copy .env.example .env
php artisan key:generate
php artisan migrate
npm install
npm run build
```
Si usas Linux/Mac, reemplaza `copy` por:
```bash
cp .env.example .env
```
## Comandos utiles
Levantar entorno de desarrollo completo (servidor, cola, logs y Vite):
```bash
composer run dev
```
Levantar solo backend:
```bash
php artisan serve
```
Levantar solo frontend:
```bash
npm run dev
```
Compilar assets para produccion:
```bash
npm run build
```
## Testing
Ejecutar tests:
```bash
composer run test
```
o
```bash
php artisan test
```
## Flujo de trabajo con Git
### 1) Crear rama de trabajo
```bash
git checkout main
git pull origin main
git checkout -b feature/nombre-cambio
```
### 2) Commits pequenos y descriptivos
Formato recomendado:
- `feat: agrega agenda semanal`
- `fix: corrige validacion de telefono`
- `docs: actualiza readme de instalacion`
### 3) Subir rama y abrir Pull Request
```bash
git add .
git commit -m "feat: descripcion breve"
git push -u origin feature/nombre-cambio
```
### 4) Actualizar tu rama con cambios de main
```bash
git checkout main
git pull origin main
git checkout feature/nombre-cambio
git merge main
```
## Estructura principal
- `app/`: modelos, controladores, middleware y logica principal
- `resources/views/`: vistas Blade
- `resources/js/` y `resources/css/`: frontend
- `routes/`: rutas web, api y consola
- `database/migrations/`: migraciones
- `tests/`: pruebas unitarias y feature
- `scripts/`: utilidades de scheduler en Windows
## Datos de acceso (Entorno de desarrollo)
Las credenciales de administrador se generan automáticamente al ejecutar las migraciones con seeders:
```bash
php artisan migrate:fresh --seed
```
O si prefieres solo los seeders sin resetear migraciones:
```bash
php artisan db:seed
```
Consulta `database/seeders/` para ver los datos que se cargan.
## Notas
- No subir archivos sensibles al repositorio (`.env`, claves, tokens).
- Mantener este README actualizado ante cambios de version o arquitectura.