Skip to content

Latest commit

 

History

37 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reflecto

Reflecto is a premium, professional platform for capturing data-driven feedback through secure, real-time polling. Built for modern teams who value precise, live data.

🚀 Features

  • Real-Time WebSocket Analytics: Watch poll responses come in live with millisecond precision.
  • Anonymous & Authenticated Voting: Choose exactly how you collect data.
  • Smart Expiry System: Set exact deadlines for polls to automatically lock.
  • Advanced Dashboard: Access structured analytics, question-wise summaries, and participant device insights.
  • Device & Browser Tracking: Know your audience with platform distribution charts (Desktop, Mobile, OS, Browsers).
  • Frictionless Sharing: Generate unique, secure links to share your polls instantly.

🛠️ Tech Stack

Frontend

  • React (with Vite)
  • Tailwind CSS v4 (with custom design system and OKLCH colors)
  • Recharts (for beautiful, interactive data visualization)
  • Framer Motion (for smooth animations)
  • Lucide React (for icons)

Backend

  • Node.js & Express
  • MongoDB (with Mongoose)
  • Socket.io (for real-time live updates)
  • Redis (via ioredis for caching/sessions)
  • Zod (for schema validation)
  • UA-Parser-JS (for device analytics)

📁 Project Structure

The project is structured as a monorepo with separate frontend and backend directories:

reflecto/
├── frontend/     # Vite + React application
└── backend/      # Express API & Socket.io server

⚙️ Installation & Setup

Prerequisites

  • Node.js (v18+ recommended)
  • PNPM (v10+ used in the project)
  • MongoDB & Redis instances running

Backend Setup

  1. Navigate to the backend directory:
    cd backend
  2. Install dependencies:
    pnpm install
  3. Create a .env file based on the environment variables needed (MongoDB URI, Redis config, JWT Secret, etc.).
  4. Start the development server:
    pnpm run dev

Frontend Setup

  1. Navigate to the frontend directory:
    cd frontend
  2. Install dependencies:
    pnpm install
  3. Start the development server:
    pnpm run dev

📜 Available Scripts

Backend

  • pnpm run dev: Starts the server with tsc-watch for auto-reloading on TypeScript changes.
  • pnpm run build: Compiles TypeScript to JavaScript in the dist folder.
  • pnpm run start: Runs the compiled server from dist/server.js.

Frontend

  • pnpm run dev: Starts the Vite development server.
  • pnpm run build: Builds the application for production.
  • pnpm run lint: Lints the project files.

📄 License

This project is licensed under the ISC License.

About

A polling app using socket io, chaicode hackathon

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages