DIVYA NAIK
Culture shaper / DJ / IP creator / Therapist / Storyteller / Artist
I make meaning through movement, mind, and media. Every medium is a way to alchemize chaos into connection.
Hola! I'm Psycho Baiko (Divya Naik) — a DJ, dancer, therapist, writer, and cultural creator who refuses to stay in one lane.
Everything I make connects: a set becomes ritual, therapy becomes story, poems become survival. Years of BPD, cancer, chaos, and resilience live inside every medium I touch.
If you're here for music, movement, healing, or myth-making — welcome to a house where all of it coexists.
Sets that arc like narratives: afrobeat, disco, house, drum & bass, glitch-hop, qawwali, world folk, neurofunk.
I treat every show as a ritual where energy builds, breath drops, bodies move, and stories resolve.
Listen/Watch: SoundCloud · Mixcloud · YouTube · Instagram
My body was the first instrument. From Bharatanatyam discipline to Animal Flow strength, I craft performances where DJing spills into dance.
JAMHOuse is a hybrid: part music lab, part community ritual, part cultural movement.
Words hold what can't be danced. I write on culture, music, psychology, and survival for Mint, Open Magazine, Red Bull, Hindustan Times, Moneycontrol, Border Movement, Wild City, and more.
Book: Stories of Darkness & Light — a poetry collection mapping life with Borderline Personality Disorder.
Read: Mint Author Page · Open Magazine · Red Bull: Beat Mandli · Red Bull: Dream Locations · Moneycontrol
Live diaries: Instagram
Comics and visual diaries translating psyche, subculture, and myth into ink. Raw, honest, sometimes dark, always human.
Commissions and collaborations welcome.
The mind can be a battlefield and a canvas. My practice blends narrative therapy, arts-based methods, CBT, REBT, and NLP to help people rewrite their stories.
I build cultural ecosystems for brands — blending storytelling, community, and strategy.
Where I've worked: BookMyShow LIVE (Original IP & Culture Consultant), OML (Bacardi AMEA), Quaver Communications, Fox Life, Hindustan Times, 101India.
Selected collaborations: Bacardi House Party Sessions, Breezer Vivid Shuffle, You Got Chef'd (Dewar's India), Grey Goose TapeCast, cross-border projects across Lebanon, Morocco, Israel, and Thailand.
Need a concept with soul plus scale? Let's design it.
Email: divyanaik2005@gmail.com
DJ Bookings: therealpsychobaiko@gmail.com
WhatsApp: +91-9820780545
Location: Mumbai / Available Globally
Welcome! Use the toggle in the top-left to switch between PSYCHO and BAIKO modes.
This text will blur as you scroll down the page.
```
```javascript
// Using Intersection Observer for lazy loading
const lazyImages = document.querySelectorAll('img.lazyload');
const imageObserver = new IntersectionObserver((entries, observer) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
const img = entry.target;
img.src = img.dataset.src;
img.classList.remove('lazyload');
observer.unobserve(img);
}
});
});
lazyImages.forEach(img => imageObserver.observe(img));
```
### Smooth Scrolling with Lenis
```javascript
import Lenis from '@studio-freight/lenis';
const lenis = new Lenis({
duration: 1.2,
easing: (t) => Math.min(1, 1.001 - Math.pow(2, -10 * t)),
direction: 'vertical',
gestureDirection: 'vertical',
smooth: true,
smoothTouch: false,
touchMultiplier: 2,
});
function raf(time) {
lenis.raf(time);
requestAnimationFrame(raf);
}
requestAnimationFrame(raf);
```
### Optimized Animations
```javascript
// Use will-change for animated elements
.animated-element {
will-change: transform, opacity;
transform: translateZ(0);
backface-visibility: hidden;
perspective: 1000px;
}
// Use transform and opacity for animations
gsap.to('.element', {
x: 100,
opacity: 0.5,
duration: 1,
ease: 'power2.out'
});
```
### Loading Strategy
- Lazy loading for images and iframes
- Critical CSS inlined in the head
- Deferred non-critical JavaScript
- Font display: swap for web fonts
### Asset Optimization
- SVG sprites for icons
- WebP images with fallbacks
- Video optimization with multiple sources
- Responsive image sizing
### Code Optimization
- CSS custom properties for theming
- BEM methodology for CSS
- Minified production assets
- Tree-shaking for JavaScript
### Performance Monitoring
- Core Web Vitals tracking
- Real User Monitoring (RUM)
- Performance budgets
- Bundle analysis
## Accessibility
### Semantic HTML
- Proper heading hierarchy
- Landmark regions (header, nav, main, footer)
- ARIA attributes for dynamic content
- Hidden content for screen readers
### Keyboard Navigation
- Focus management
- Skip links
- Visible focus states
- Tab order
### Color & Contrast
- WCAG 2.1 AA compliance
- High contrast mode support
- Reduced motion preferences
- Forced colors mode support
### Screen Reader Support
- ARIA live regions
- Dynamic content announcements
- Form validation messages
- Error handling and recovery
## Browser Support & Compatibility
### Supported Browsers
- Chrome (latest 2 versions)
- Firefox (latest 2 versions)
- Safari (latest 2 versions)
- Edge (Chromium-based)
- Mobile Safari (iOS 13+)
- Chrome for Android
### Feature Detection
- Modernizr for feature detection
- CSS @supports for progressive enhancement
- JavaScript feature detection
- Polyfills for modern features
### Fallbacks
- CSS Grid fallbacks
- Flexbox fallbacks
- Variable font fallbacks
- JavaScript fallbacks for critical features
## Design System
### Design Tokens
- Color palette with semantic naming
- Typography scale
- Spacing system
- Border radius scale
- Shadow system
- Animation timings and easings
### Component Library
- Button variants
- Form controls
- Cards and containers
- Navigation components
- Modal dialogs
- Tooltips and popovers
### Motion Design
#### Hover Effects
```css
/* Button Hover Effect */
.btn-hover {
position: relative;
overflow: hidden;
transition: color 0.3s ease;
z-index: 1;
}
.btn-hover::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: #000;
transform: translateX(-100%);
transition: transform 0.3s ease;
z-index: -1;
}
.btn-hover:hover {
color: #fff;
}
.btn-hover:hover::before {
transform: translateX(0);
}
```
#### Image Reveal
```javascript
function initImageReveal() {
const images = document.querySelectorAll('.reveal-image');
images.forEach(img => {
const parent = img.parentElement;
gsap.set(img, { scale: 1.2 });
gsap.to(img, {
scale: 1,
scrollTrigger: {
trigger: parent,
start: 'top bottom',
end: 'bottom top',
scrub: true
}
});
});
}
```
#### Text Reveal
```javascript
function initTextReveal() {
const textElements = document.querySelectorAll('.reveal-text');
textElements.forEach(el => {
const split = new SplitText(el, { type: 'lines,words,chars' });
gsap.from(split.chars, {
y: '100%',
opacity: 0,
duration: 0.6,
ease: 'power3.out',
stagger: 0.02,
scrollTrigger: {
trigger: el,
start: 'top 80%'
}
});
});
}
```
### Documentation
- Component API
- Usage guidelines
- Accessibility requirements
- Design specs
- Code examples