Purpose
This site collects projects and notes as I develop my software engineering skills. Its visual design and implementation were prepared with AI assistance. The cover is a programmed Three.js ribbon: light follows its complete closed path, with damped pointer response, a lit perspective grid, pause controls and a static alternative. The request-lifecycle illustration runs only in the browser and is labeled as a conceptual model.
Structure
Astro generates static pages from Markdown collections. Projects and notes remain linked through a validated project reference. Browser JavaScript is limited to interactive illustrations. There is no application backend, user account system, analytics service, or customer data.
Deployment
The build supports GitHub Pages under /roysanchez.dev/ and Cloudflare at the domain root. Internal links use the configured base. The portfolio is generated as static files without a server or database. Tests, builds and generated-link checks run before release.
Visual and technical decisions
The ribbon follows a closed path sampled by distance. The light phase repeats every eight seconds of active time; both silver and blue faces share the same distance coordinate. Pointer movement adjusts the 3D pose within small limits. No orbit or drag controls are attached.
The perspective grid responds to the light’s projected position. Motion pauses when the illustration leaves the viewport, when the page is hidden, or when the reader requests a pause. Reduced motion renders a still view. A matching image remains available without JavaScript.
Project presentations separate working demonstrations, early foundations, and cases still in review. Earlier work in Lima is summarized separately from current learning and future goals. The illustrations are symbolic; they do not represent employer endorsements or completed future milestones.
Current work
The GitHub repository contains the earlier public source. The new visual implementation is prepared on a local review branch. Technical case studies stay in draft until their explanation and release review are complete. Published availability is verified separately from local build output.