How adavitas/portfolio works
This is a static personal portfolio. A visitor opens the single-page site, browses its sections and project case studies, and can use contact/profile links. Browser JavaScript enhances the page with section and project selection, certificates, avatar interactions, activity display, and appearance controls; CSS provides responsive and motion-aware presentation. The README documents the major capabilities; sampled JavaScript excerpts are partial, so uncertain internal wiring is omitted.
Main entry points: index.html Portfolio page · main.js Interaction controller · theme-init.js Initial appearance · css Responsive styles
Components 20
Portfolio content
- Portfolio page
index.html - Projects and cases
index.html - Certificates
index.html - About and skills
index.html - Contact and profiles
index.html - Search and sharing metadata
index.html
Page interactions
- Interaction controller
js/main.js - Section switching
js/main.js - Project selection
js/main.js - Certificate panels
js/main.js - Interactive avatar
js/main.js - GitHub activity
js/main.js - Theme and accent
js/main.js - Initial appearance
js/theme-init.js
Visual presentation
- Responsive styles
css - Motion and accessibility styles
css/motion.css
Other components
- Visitor
- Browser
- Browser storage
- GitHub activity source
Connections 23
- Visitor → Browser: opens
- Browser → Portfolio page: loads
- Portfolio page → Interaction controller: runs
- Portfolio page → Initial appearance: runs first
- Portfolio page → Responsive styles: loads styles
- Responsive styles → Portfolio page: styles
- Initial appearance → Browser storage: reads preferences
- Initial appearance → Portfolio page: sets initial appearance
- Interaction controller → Section switching: handles selection
- Section switching → Portfolio page: shows sections
- Interaction controller → Project selection: handles selection
- Project selection → Projects and cases: shows cases
- Interaction controller → Certificate panels: handles toggles
- Certificate panels → Certificates: expands panels
- Interaction controller → Interactive avatar: handles previews
- Interactive avatar → Portfolio page: updates avatar
- Interaction controller → GitHub activity: renders activity
- GitHub activity source → GitHub activity: provides activity
- Interaction controller → Theme and accent: handles choices
- Theme and accent → Browser storage: reads and saves
- Theme and accent → Portfolio page: updates appearance
- Motion and accessibility styles → Portfolio page: supports reduced motion
- Visitor → Contact and profiles: uses contact links