Initial commit: MangaReader iOS App

 Features:
- App iOS completa para leer manga sin publicidad
- Scraper con WKWebView para manhwaweb.com
- Sistema de descargas offline
- Lector con zoom y navegación
- Favoritos y progreso de lectura
- Compatible con iOS 15+ y Sideloadly/3uTools

📦 Contenido:
- Backend Node.js con Puppeteer (opcional)
- App iOS con SwiftUI
- Scraper de capítulos e imágenes
- Sistema de almacenamiento local
- Testing completo
- Documentación exhaustiva

🧪 Prueba: Capítulo 789 de One Piece descargado exitosamente
  - 21 páginas descargadas
  - 4.68 MB total
  - URLs verificadas y funcionales

🎉 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-02-04 15:34:18 +01:00
commit b474182dd9
6394 changed files with 1063909 additions and 0 deletions

26
backend/node_modules/data-uri-to-buffer/dist/node.js generated vendored Normal file
View File

@@ -0,0 +1,26 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.dataUriToBuffer = void 0;
const common_1 = require("./common");
function nodeBuffertoArrayBuffer(nodeBuf) {
if (nodeBuf.byteLength === nodeBuf.buffer.byteLength) {
return nodeBuf.buffer; // large strings may get their own memory allocation
}
const buffer = new ArrayBuffer(nodeBuf.byteLength);
const view = new Uint8Array(buffer);
view.set(nodeBuf);
return buffer;
}
function base64ToArrayBuffer(base64) {
return nodeBuffertoArrayBuffer(Buffer.from(base64, 'base64'));
}
function stringToBuffer(str) {
return nodeBuffertoArrayBuffer(Buffer.from(str, 'ascii'));
}
/**
* Returns a `Buffer` instance from the given data URI `uri`.
*
* @param {String} uri Data URI to turn into a Buffer instance
*/
exports.dataUriToBuffer = (0, common_1.makeDataUriToBuffer)({ stringToBuffer, base64ToArrayBuffer });
//# sourceMappingURL=node.js.map