finds.dev← search

// the find

ErickWendel/semana-javascript-expert05

★ 1,556 · JavaScript · updated Apr 2025

JS Expert Week 5.0 classes - Google Drive Clone

A tutorial workshop repo from a Brazilian JavaScript educator, walking through building a Google Drive clone with Node.js streams, drag-and-drop upload, and real-time progress via WebSockets. Five lessons, each building on the last — you're meant to follow along, not clone and run. Target audience is intermediate JS developers who want hands-on experience with the Streams API and browser File API.

The Node.js streams usage is the real draw — piping multipart uploads directly to disk without buffering the whole file in memory is something most tutorials skip entirely. The 100% code coverage goal is enforced throughout, with both unit and integration tests included for each lesson rather than tacked on at the end. The incremental lesson structure (aula01 through aula05, each a working checkpoint) means you can see exactly what changed between steps. The frontend avoids any framework — pure vanilla JS with Fetch, WebSocket, and the File API, which is genuinely useful for understanding what React abstracts away.

This is a workshop artifact, not a library or production-grade tool — the README checklist still shows unchecked boxes, which is intentional pedagogically but disorienting if you stumble on it without context. The SSL certificates are committed into the repo, which is fine for local dev but will confuse anyone who tries to deploy it without reading carefully. It targets Node 16.8, which is well past end-of-life; the experimental VM modules flag it relies on for Jest ESM support has since stabilized, but the setup instructions won't tell you that. Storage is disk-only with no abstraction layer, so the 'extend this to S3' challenge left as an exercise means the architecture doesn't obviously show you how.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →