Skip to content

gotcha-khushi/Focus_Picnic

Repository files navigation

Focus Picnic 🍀

A cozy multiplayer study space where students can focus together in a calm pixel-art world.

📖 Problem

Studying alone can feel isolating and demotivating. Most productivity apps focus only on tasks and pressure, while video-call study rooms can become distracting and overwhelming.

Students need a lightweight and relaxing space that helps them stay focused without feeling alone.


🌿 Solution

Focus Picnic is a cozy pixel-art virtual study space inspired by quiet co-working environments, Pomodoro focus sessions, indie-game aesthetics, and the comforting feeling of studying beside someone.

Instead of focusing on productivity overload, Focus Picnic focuses on calm interaction, soft ambience, and quiet companionship.

Users can create or join a picnic room, choose a character, set personal focus and break timers, and study together inside a relaxing animated environment.


📸 Screenshot

🌼 Picnic Study Room

Realtime two-user Pomodoro study session with animated avatars, ambient music controls, and independent focus timers.

image

✨ Features

Core Features

  • Realtime room synchronization and chat using Socket.IO
  • Public matchmaking and private room code support
  • Duplicate avatar conflict prevention
  • Independent Pomodoro timer system per user
  • Dynamic room creation and cleanup
  • Animated avatar state transitions
  • Realtime room presence updates
  • Realtime picnic chat system
  • Ambient music persistence across pages
  • Pixel-art inspired interactive UI
  • Onboarding flow for first-time users

🫧 Matchmaking System

Users can either create private rooms with room codes or enter public matchmaking.

Public matchmaking automatically pairs two users if:

  • a room has only one user
  • both users selected different avatars

Each room supports a maximum of two users.

Duplicate avatars are prevented inside the same room.

Empty rooms are automatically removed.


🎵 Music & Atmosphere

  • Ambient landing page music
  • Music player UI

🖥️ UI & Experience

  • Cozy pixel-art picnic environment
  • Retro game-inspired window UI
  • Soft floating glass-style panels
  • Calm pastel color palette
  • Minimal distraction-focused interface

🛠️ Tech Stack

Frontend

  • React
  • Vite
  • CSS
  • Vercel
  • Krita for pixel-art assets and UI design

Backend

  • Node.js
  • Express
  • Render
  • Socket.IO

⚡ Challenges Faced

  • Designing a consistent pixel-art UI
  • Matching avatar positioning with the picnic background
  • Creating smooth avatar transitions
  • Handling realtime room matchmaking
  • Preventing duplicate avatar selection
  • Managing independent Pomodoro timers
  • Carrying ambience between pages
  • Building realtime room presence using Socket.IO

🌱 Planned Features

  • Avatar expression animations
  • media key controls
  • Additional music playlists
  • More avatar animations
  • Custom picnic themes
  • Persistent accounts
  • Mobile polish

🎨 Inspiration

Inspired by:

  • cozy study spaces
  • pixel-art games
  • Pomodoro study methods
  • ambient co-working rooms
  • quiet companionship while studying

🚧 Current Status

✅ Implemented

  • Realtime room system
  • Public matchmaking
  • Private room codes
  • Realtime picnic chat
  • Avatar system
  • Presence system
  • Independent timers
  • Music system
  • Animated avatar flow
  • Cozy UI system

🔄 In Progress

  • Expression animations

📌 Not Yet Implemented

  • Persistent accounts
  • Database storage
  • Firebase integration

About

A realtime multiplayer Pomodoro study space with cozy pixel-art environments, ambient music, and animated avatars.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages