Skip to Content
Technical docsConfiguration

Configuration

Defaults live in lib/appConfig.ts. Overrides persist in Redis via Settings / PUT /api/config.

FieldDefaultRole
folderNameuploadsOneDrive destination folder under drive root
bufferTimeMs60000 (1 min)Delay before a new link becomes usable
linkExpiryTimeMs3600000 (1 h)Link lifetime / Redis TTL at create
fileDetails.maxFileCount1One video per upload
fileDetails.maxFileSizeBytes4 GBHard max
fileDetails.maxSimpleFileSizeBytes4 MBThreshold for simple vs session upload
fileDetails.uploadChunkSizeBytes10 MBResumable chunk size
referenceSheetNameREFERENCE.xlsxWorkbook for child picker
childNameColumn / edcColumnChild Name / EDCExcel headers (or letters)
allowedAdminEmailsdefaults + envWho may use /setup and own the drive

Accepted upload types default to video/* (client also accepts empty MIME + common video extensions for iOS).

Extending safely

ChangeSuggested approach
New settingAdd to AppConfig + defaults + Settings UI + updateAppConfig merge
New APIPlace under app/api/…/route.ts; call access helpers explicitly
Filename schemeAdjust lib/uploadFilename.ts; keep age logic in lib/age.ts
Extra notification channelHook beside sendUploadNotificationEmail in /api/upload/complete
UI copyPrefer app/page.tsx / setup page; keep legal copy via lib/publisher.ts
Last updated on