Skip to content

N0EV/live-coding

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Hackathon DAM/DAW/ASIR: De Cero a Producción

Este documento es vuestra hoja de ruta. Tenéis que construir una aplicación web funcional. Recordad: la próxima semana, otros compañeros intentarán encontrar fallos de seguridad en vuestro código. ¡Construid con cuidado!

Enviar un enlace de tu repositorio público a daniel@secur0.com.

1. Opciones de Proyectos (Elegid uno)

Estas ideas están diseñadas para ser completadas en el tiempo previsto usando un stack sencillo (HTML/JS/Node o Python/Flask o PHP).

Proyecto Descripción Core
Gestor de Notas Privadas Un usuario se registra, inicia sesión y escribe notas que solo él puede ver.
Foro de Mensajes Un usuario se registra, inicia sesión y puede publicar mensajes en un muro público donde cualquiera puede verlos.
Mini-Tienda Un usuario se registra, inicia sesión y puede visualizar, comprar y vender productos.
Sistema de Subida de CVs Un usuario se registra, inicia sesión y puede subir un archivo .pdf con su currículum que se almacenará en el servidor.

Tenéis los requisitos detallados en el archivo requisitos.md.


2. Requisitos de Despliegue (Mínimos)

Para que vuestra app sea evaluable, debe cumplir esta estructura básica:

A. Estructura de Datos

  • Base de Datos: Podéis usar SQLite o JSON (un archivo local, lo más rápido).
  • Usuarios: Debe haber al menos una tabla de usuarios con contraseñas (¡pensad si las guardáis en texto plano o con hash!).

B. Infraestructura

Debéis desplegar vuestra aplicación en un contenedor Docker. También podéis elegir desplegarla en un PaaS como Railway.app o Render.com (conectando vuestro repo de GitHub).


3. Ejemplo de Arquitectura Sugerida

Si no sabéis por dónde empezar, usad este esquema estándar:

Frontend: HTML5 + CSS (Framework como Pico.css o Bootstrap para no perder tiempo en diseño).

Backend: Express.js (Node) o Flask (Python).

Persistencia: Archivo JSON o SQLite.


4. Checklist de "Supervivencia"

Antes de entregar, aseguraos de que vuestra app no cae ante lo más básico:

  • Validación: ¿Qué pasa si envío un formulario vacío?
  • Autenticación: ¿Puedo acceder a una ruta simplemente escribiendo la URL sin loguearme?
  • Reducción: ¿Mando únicamente la información necesaria o toda la disponible?
  • Control de Errores: Si algo falla, ¿la app muestra el error feo del servidor con rutas de carpetas o un mensaje amigable?

5. Herramientas Útiles

  • Para el desarrollo: Visual Studio Code + Extensiones de lenguaje.
  • Para bases de datos: DBeaver para visualizar vuestras tablas fácilmente.

About

Noé Valladolid 1-ASIRB

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages

  • JavaScript 36.8%
  • HTML 29.4%
  • CSS 16.4%
  • Python 14.0%
  • Dockerfile 3.4%