Esta es una aplicación de Lista de Tareas con una API backend en Go y un frontend en Vue.js. Permite a los usuarios crear, leer, actualizar y eliminar tareas, con una interfaz de usuario intuitiva y un modo oscuro.
- API RESTful en Go
- Frontend en Vue.js con Tailwind CSS
- Modo oscuro
- Operaciones CRUD completas para las tareas
- Retroalimentación visual para las acciones del usuario
- Dockerizado para fácil despliegue
backend/: Contiene la API de Gocmd/api/: Punto de entrada de la aplicacióninternal/: Lógica interna de la aplicaciónhandlers/: Manejadores de las rutas HTTPmodels/: Definiciones de los modelos de datosdatabase/: Configuración y operaciones de la base de datosutils/: Utilidades generales
frontend/: Contiene el frontend de Vue.jssrc/: Código fuente de Vue.jscomponents/: Componentes de Vueassets/: Recursos estáticos
docker-compose.yml: Configuración de Docker Compose
- Docker y Docker Compose (para ejecutar con Docker)
- Go 1.16+ (para desarrollo local del backend)
- Node.js 14+ (para desarrollo local del frontend)
- SQLite (incluido en Go, no se requiere instalación adicional)
-
Clona este repositorio:
git clone https://github.com/FernandoJCa/fullstack-project.git cd todo-app -
Construye y ejecuta los contenedores:
docker-compose up --build -
Accede a la aplicación en
http://localhost:4243.
-
Navega al directorio
backend:cd backend -
Instala las dependencias:
go mod download -
Ejecuta el servidor:
go run cmd/api/main.go
El backend estará disponible en http://localhost:8080.
-
Navega al directorio
frontend:cd frontend -
Instala las dependencias:
npm install -
Ejecuta el servidor de desarrollo:
npm run dev
El frontend estará disponible en http://localhost:4243.
GET /todos: Obtiene todas las tareasGET /todos/{id}: Obtiene una tarea específicaPOST /todos: Crea una nueva tareaPUT /todos/{id}: Actualiza una tarea existenteDELETE /todos/{id}: Elimina una tarea
Para más detalles, consulta la documentación de Swagger en http://localhost:8080/swagger/index.html cuando el backend esté en ejecución.