Project representa un único proyecto LaTeX en Overleaf. Almacena los metadatos del proyecto, la propiedad y el control de acceso, la estructura de archivos, la configuración de compilación y el estado de la colaboración.
Identificación principal y metadatos
_id: ObjectId único de MongoDB que identifica el proyecto.name: nombre visible del proyecto.description: descripción textual opcional del proyecto.active: indica si el proyecto está activo actualmente.version: versión interna del esquema o del formato del proyecto.trashed: lista de elementos movidos a la papelera (eliminación lógica).deletedDocs: registros de documentos eliminados de forma permanente.
Propiedad y control de acceso
owner_ref: referencia al usuario propietario del proyecto.collaberator_refs: usuarios con permisos de edición.reviewer_refs: usuarios con acceso de nivel revisor.readOnly_refs: usuarios con acceso de solo lectura.pendingEditor_refs/pendingReviewer_refs: invitaciones pendientes.
Acceso basado en tokens
tokens: registro de tokens para enlaces compartidos.tokenAccessReadOnly_refs: tokens que conceden acceso de solo lectura.tokenAccessReadAndWrite_refs: tokens que conceden acceso de lectura y escritura.
Seguimiento de actividad
lastUpdated: marca de tiempo de la modificación más reciente.lastUpdatedBy: usuario que realizó la última actualización.lastOpened: marca de tiempo de la última vez que se abrió el proyecto.deletedByExternalDataSource: indica si la eliminación la desencadenó una integración externa.
Estructura del proyecto
Documento raíz y carpetarootDoc_id: ObjectId del documento LaTeX principal de entrada (normalmentemain.tex).rootFolder: representación en línea del árbol de archivos del proyecto.
name/_id: nombre e identificador de la carpeta.docs: lista de documentos fuente LaTeX con su nombre e_id.fileRefs: referencias a archivos binarios (imágenes, archivos de datos), que incluyen:name: nombre del archivocreated: marca de tiempo de la subidarev: contador de revisioneshash: hash del contenido para la deduplicaciónlinkedFileData: vínculo con almacenamiento externo (si lo hay)
folders: subcarpetas anidadas.
Configuración de compilación y del editor
compiler: motor LaTeX seleccionado (pdflatex,xelatex,lualatex, etc.).spellCheckLanguage: idioma del corrector ortográfico para este proyecto.
Configuración pública y de uso compartido
publicAccesLevel: visibilidad del proyecto (private,readOnly,public, etc.).collabratecUsers: usuarios vinculados desde plataformas de colaboración externas.
Extensiones específicas de Overleaf
overleaf.history:id: identificador utilizado por el servicio de historial.display: indica si el historial está habilitado y visible.
Versionado interno
__v: clave de versión interna de Mongoose para el control de concurrencia.
Ejemplo de proyecto
Ejemplo de proyecto

