Skip to content

Latest commit

 

History

History
153 lines (115 loc) · 3.62 KB

README.md

File metadata and controls

153 lines (115 loc) · 3.62 KB

curate.fun frontend

React-based frontend application for the curate.fun platform

Table of Contents

Architecture Overview

Tech Stack

The frontend leverages modern web technologies for optimal performance and developer experience:

  • Framework: React + TypeScript

    • Component-based architecture
    • Strong type safety
    • Excellent ecosystem support
  • Build Tool: RSBuild

    • High-performance build system
    • Optimized production builds
    • Modern development experience
  • Styling: Tailwind CSS

    • Utility-first CSS framework
    • Highly customizable
    • Zero runtime overhead
  • Routing: TanStack Router

    • Type-safe routing
    • Efficient navigation
    • Data-driven route handling

Application Structure

src/
├── components/     # React components
│   ├── FeedItem.tsx
│   ├── FeedList.tsx
│   ├── Header.tsx
│   ├── HowItWorks.tsx
│   ├── Layout.tsx
│   ├── Modal.tsx
│   └── Settings.tsx
├── lib/           # Utility functions and API clients
│   ├── api.ts
│   ├── config.ts
│   └── twitter.ts
├── routes/        # Application routes
│   ├── __root.tsx
│   ├── feed.$feedId.tsx
│   ├── index.tsx
│   └── settings.tsx
├── types/         # TypeScript definitions
├── App.tsx        # Root component
└── index.tsx      # Application entry point

Key Features

Content Display

The frontend provides a rich content viewing experience:

  • Feed-based content organization
  • Customizable content views
  • Content filtering and sorting
  • Responsive content cards

User Settings

  • Customizable feed preferences
  • Theme selection
  • Notification settings
  • Distribution channel configuration

Responsive Design

  • Mobile-first approach
  • Adaptive layouts
  • Cross-browser compatibility
  • Accessible UI components

Development

Prerequisites

  • Node.js 18+
  • Bun (recommended) or npm
  • Backend service running locally (for full functionality)

Local Setup

  1. Install dependencies:
bun install
  1. Start development server:
bun run dev

The app will be available at http://localhost:5173

Backend Integration

The frontend communicates with the backend service through a RESTful API:

  • Content retrieval via /api/feeds endpoints
  • Settings management through /api/settings
  • Plugin configuration via /api/plugins
  • Content submission through Twitter integration

See the Backend README for detailed API documentation and service architecture.