Table of Contents
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: Vite
- Lightning-fast development server
- Optimized production builds
- Modern development experience
-
Styling: Tailwind CSS
- Utility-first CSS framework
- Highly customizable
- Zero runtime overhead
src/
├── assets/ # Static assets
├── components/ # React components
├── types/ # TypeScript definitions
└── App.tsx # Root component
The submission system provides:
- Intuitive submission form
- Real-time validation
- Status tracking
- Moderation feedback
- Live submission status updates
- Dynamic content loading
- Optimistic UI updates
- Mobile-first approach
- Adaptive layouts
- Cross-browser compatibility
- Node.js 18+
- Bun (recommended) or npm
- Backend service running
- Install dependencies:
bun install
- Start development server:
bun run dev
The app will be available at http://localhost:5173
The frontend communicates with the backend service through a RESTful API:
- Submission handling via
/submit
endpoint - Content retrieval through
/submissions
- Real-time updates using polling (future: WebSocket support)
See the Backend README for detailed API documentation.