Kendal 1.0 — neportat
Acest prototip nu a fost portat pe site. Nu exista pagina live; aici sunt doar sursa si imaginile, ca sa il poti porta mai tarziu fara folderul din Drive. Sursa: src-kendal.zip.
Ce face
- Ecran impartit in doua: stanga lista verticala de nume de proiect, dreapta carusel vertical de imagini.
- Cele doua piste se misca in directii opuse, dar centreaza mereu acelasi proiect.
- Scroll infinit: dupa ultimul proiect se reia de la primul (doua copii ale setului, ca sa nu se vada cusatura).
- Loader la prima incarcare: doua imagini intra spre mijloc din directii opuse in timp ce KENDALL se desface pe litere.
- Click pe imagine → pagina de proiect care se deschide peste jumatatea stanga, cu imaginea expandata pe dreapta.
Ce cere daca il portezi
- Nu foloseste GSAP deloc — totul e tranzitii CSS plus o clasa proprie,
StepScroll, care transforma wheel/trackpad/touch in pasi discreti (prag 14, interval 55 ms). - Sursa are patru module ES cu
import:main.js,projects.js,stepscroll.js,loader.js. PentrujavascriptCodetrebuie unite intr-un singur IIFE, exact ca la Studio Monet. - Fonturi: Inter si Source Serif 4 de la Google Fonts.
Media pe site
Atasamentele 498–522: 25 de imagini, 5 proiecte × 5, portret 1400×1875 JPG progresiv la calitate 85, ~8 MB. Numele kendal-pNN-NN.jpg pastreaza structura din sursa: primul numar este folderul project-NN, al doilea este fisierul.
Atentie: in projects.js numele proiectului nu corespunde numarului folderului:
- Northlight — Portrait —
project-05 - Aperture — Photography —
project-01 - Monolith — Architecture —
project-02 - Still Life — Editorial —
project-03 - Daylight — Interiors —
project-04
De stiut inainte de portare
imgSrcadauga?v=Date.now()pe fiecare imagine, ca sa vada modificarile la refresh. Scoate-l la portare — pe productie omoara cache-ul browserului.- Caruselul construieste doua copii ale setului (
M = N * 2) si alege continutul prin modulo. Daca schimbi numarul de proiecte, verifica bufferul. - Textele din pagina de proiect sunt lorem hardcodat in
index.html, nu inprojects.js.
