import fs from 'node:fs/promises'; import path from 'node:path'; import dotenv from 'dotenv'; import Neocities from 'neocities' const uploadDir = 'tools/neocities'; async function listFiles() { const files = []; for (let name of await fs.readdir(uploadDir, { recursive: true })) { const file = path.join(uploadDir, name); const stat = await fs.stat(file); if (stat.isDirectory()) continue; files.push({ name: name, path: file }); } return files; } async function main() { dotenv.config(); const api = new Neocities(process.env.NEOCITIES_USERNAME, process.env.NEOCITIES_PASSWORD); const files = await listFiles(); const response = await new Promise(cb => api.upload(files, cb)); console.log(response); } main();