Skip to content

devmilon923/Storiboard-UI

Repository files navigation

πŸ–‹οΈ Storiboard

Where imagination finds its voice. A modern, premium blogging and story-sharing social platform built with Next.js 16, React 19, Tailwind CSS v4, and TanStack Query.

Backend Repository: /Storiboard-Server

Live Preview: /storiboard

🌟 Overview

Storiboard is a fully-featured, highly interactive social blogging platform designed for dreamers, writers, and creators. It offers a beautiful, glassmorphic UI, rich interactive components, and real-time style actions designed to help users share their stories, fiction, memoirs, and ideas without limits.

Whether you're looking to publish rich stories, connect with an audience through a robust followers system, or discover trending ideas from the community, Storiboard provides a seamless, state-of-the-art blogging experience.


πŸ“ Directory Structure

Note: Configuration files (package.json, tsconfig.json, etc.) are standard Next.js setup files and are omitted for brevity.

storeboard/
β”œβ”€β”€ πŸ“ app/                       # Next.js App Router - Core application structure
β”‚   β”œβ”€β”€ page.tsx                  # Landing page
β”‚   β”œβ”€β”€ auth/                     # Authentication (login, register)
β”‚   β”œβ”€β”€ home/                     # Authenticated user area
β”‚   β”‚   β”œβ”€β”€ advanced-editor/      # Story publishing dashboard
β”‚   β”‚   β”œβ”€β”€ followers/            # Followers management
β”‚   β”‚   β”œβ”€β”€ messages/             # User messaging
β”‚   β”‚   β”œβ”€β”€ notifications/        # Real-time alerts
β”‚   β”‚   β”œβ”€β”€ profile/              # User profile & edit
β”‚   β”‚   └── save-post/            # Bookmarked stories
β”‚   β”œβ”€β”€ admin/                    # Admin dashboard
β”‚   └── hooks/                    # React hooks (debounce, etc.)
β”‚
β”œβ”€β”€ πŸ“ components/                # Reusable React components
β”‚   β”œβ”€β”€ social-post-card.tsx      # Main post card component
β”‚   β”œβ”€β”€ comment-sidebar.tsx       # Threaded comments panel
β”‚   β”œβ”€β”€ create-post.tsx           # Post composer
β”‚   β”œβ”€β”€ home-navbar.tsx           # Navigation bar
β”‚   └── ui/                       # shadcn/ui primitives (button, card, input, etc.)
β”‚
β”œβ”€β”€ πŸ“ providers/                 # React Context & Providers
β”‚   β”œβ”€β”€ AuthContext.tsx           # Authentication state
β”‚   β”œβ”€β”€ QueryClient.tsx           # TanStack Query setup
β”‚   └── Protect*.tsx              # Route protection components
β”‚
β”œβ”€β”€ πŸ“ utils/                     # Utilities & API
β”‚   β”œβ”€β”€ helpers.ts                # Helper functions
β”‚   └── api/
β”‚       β”œβ”€β”€ endpoints.ts          # TanStack Query hooks
β”‚       └── validations.ts        # Zod validation schemas
β”‚
β”œβ”€β”€ πŸ“ lib/                       # Library utilities
β”‚   └── utils.ts                  # Tailwind merge utilities
β”‚
└── πŸ“ public/                    # Static assets

πŸš€ Getting Started

πŸ“‹ Prerequisites

Make sure you have Node.js (v18.x or higher) and npm installed on your machine.

βš™οΈ Installation

  1. Clone the Repository:

    git clone https://github.com/devmilon923/Storiboard-UI.git
    cd Storiboard-UI
  2. Install Dependencies:

    npm install
  3. Configure Environment Variables: Create a .env.local file in the root directory and configure the environment variables:

    NEXT_PUBLIC_API_URL=your_backend_api_url
    NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=your_cloudinary_name
  4. Run the Development Server:

    npm run dev

    Open http://localhost:3000 in your browser to view the application.

  5. Build for Production:

    npm run build
    npm run start

✨ Key Features & Highlights

πŸ” Advanced Authentication with OTP Hashing

  • Secure OTP Verification: Implements 5-digit OTP validation during user registration for enhanced security
  • Backend OTP Hashing: OTPs are cryptographically hashed using industry-standard algorithms (likely bcrypt or similar) before storage
  • Token-Based Session Management: Uses JWT tokens with automatic refresh mechanisms via renewToken endpoints
  • Multi-Layer Security: Integrates role-based access control (Admin, User, Moderator) with protected routes

πŸ“Š Intelligent Feed Algorithm

  • Cursor-Based Pagination: Implements efficient cursor pagination for infinite scrolling with limit and pc (page cursor) parameters
  • Trending Feed System: Curated "Trending" tab that surfaces popular posts based on engagement metrics (likes, comments, shares)
  • Saved Posts Management: Dedicated "Save Post" tab for bookmarked content with separate API endpoints (/post/bookmarks/)
  • Read Time Estimation: Automatically calculates and displays estimated reading time for each post (default 200 words/minute)
  • Real-time Feed Updates: TanStack Query manages cache invalidation for instant post creation and bookmark updates

πŸ’¬ Post with Nested Threaded Comments

  • Multi-Level Comment System: Full support for main comments and nested replies (up to N-levels)
  • Threaded Reply Architecture: Replies are linked to parent comments via sourceId and commentType ("post" | "replie")
  • Infinite Comment Pagination: Each comment thread supports infinite pagination through useGetAllComments and useGetAllReplie hooks
  • Interactive Comment Sidebar: Dedicated comment panel displaying entire conversation thread with real-time updates
  • Comment Actions: Like, reply, and delete functionality on each comment with optimistic UI updates

πŸ—„οΈ Prisma with PostgreSQL

  • Type-Safe Database ORM: Prisma ORM for fully type-safe database operations and migrations
  • PostgreSQL Integration: Production-grade relational database with ACID compliance
  • Auto-Generated Migrations: Schema versioning through Prisma Migrate for collaborative development
  • Optimized Queries: Efficient data fetching with relation loading and selective field queries
  • Scalable Architecture: Ready for deployment on cloud platforms like Vercel, Railway, or AWS

🎨 Clean & Premium UI System

Glassmorphism Design

  • Backdrop blur utility combined with border-opacity overlays (backdrop-blur-sm bg-card/80 border-border/50) for floating UI panels
  • Semi-transparent components with visual depth and modern aesthetic

Color & Typography

  • Premium Dark Mode: High-contrast, deep-slate backgrounds with subtle pastel accents that reduce eye strain while retaining visual vibrance
  • Consistent Design System: Tailwind CSS v4 with custom color tokens for cohesive branding
  • Readable Typography: Optimized font sizes and line-height ratios for comfortable reading

Micro-Interactions

  • Smooth hover animations on actionable items (group-hover:scale-110 group-hover:rotate-3)
  • Sleek transitions and fade-in animations (animate-in fade-in slide-in-from-bottom-4)
  • Loading states with spinning loaders for async operations

Responsive Layout

  • Flexible grids and flexbox layouts that adapt to desktop, tablet, and mobile
  • Native-like experience with proper spacing and touch-friendly buttons
  • Persistent navigation bar with contextual menu items

πŸš€ Advanced Frontend Stack

  • React 19: Latest React features with server and client components
  • Next.js 16: App Router for modern file-based routing and API routes
  • TanStack Query: Powerful data fetching, caching, and synchronization
  • Tailwind CSS v4: Utility-first CSS with advanced features and plugins
  • React Hook Form: Performant form handling with validation
  • Zod: Type-safe schema validation for both frontend and backend
  • Lucide React: Consistent icon library throughout the application
  • Sonner: Beautiful toast notifications for user feedback
  • Tiptap Editor: Rich text editor for composing stories with markdown support

πŸ‘₯ Social Features

  • Follow System: Track and manage followers with dedicated followers dashboard
  • Like & Bookmark: Interactive post engagement with persistent bookmarks
  • Real-time Notifications: Event log system for user interactions and updates
  • User Profiles: Comprehensive profiles with bio, website, address, and profession
  • Advanced Search & Filtering: Search by profession, with infinite pagination

🎨 Design & Aesthetic System

Storiboard utilizes a carefully curated color system and modern styling guidelines to offer a premium UI:

  • Premium Dark Mode: High-contrast, deep-slate backgrounds with subtle pastel accents that reduce eye strain while retaining visual vibrance.
  • Glassmorphism: Backdrop blur utility combined with border-opacity overlays (backdrop-blur-sm bg-card/80 border-border/50) to create floating UI panels.
  • Micro-Animations: Hover animations on actionable items (group-hover:scale-110 group-hover:rotate-3) and sleek transitions to keep the application feeling responsive and alive.
  • Fluid Layouts: Responsive grids and flexboxes configured via Tailwind CSS to ensure a native-like experience on desktop, tablet, and mobile browsers.

πŸ“„ License

This project is licensed under the MIT License. See the LICENSE file for more information.

About

Storiboard is a modern social blogging platform for writers and creators, featuring a beautiful glassmorphic UI, rich interactions, and real-time features to share stories, ideas, and creativity freely.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors