A modern React web application for exporting and viewing Discord chat history with a beautiful Discord-like interface.
- 🔐 Secure Authentication - Discord token-based authentication
 - 📤 Chat Export - Export Discord chats in multiple formats (JSON, HTML, CSV, TXT)
 - 👁️ Live Preview - Preview messages before exporting
 - 🎨 Discord-like UI - Familiar interface that matches Discord's design
 - 📱 Responsive Design - Works perfectly on desktop and mobile
 - ⚡ Real-time Progress - Live export progress tracking
 - 🔍 Advanced Search - Search through messages and channels
 - 📁 File Management - View and manage exported chat files
 
- Frontend: React 18 + TypeScript
 - Styling: Tailwind CSS with custom Discord theme
 - Icons: Lucide React
 - State Management: React Hooks
 - Build Tool: Create React App
 - API Integration: Discord REST API v10
 
- Node.js 16+ and npm
 - Discord account and token
 - Modern web browser
 
- 
Clone the repository
git clone https://github.com/HassanXTech/DiscordChatExporter.git cd DiscordChatExporter - 
Install dependencies
npm install
 - 
Start development server
npm start
 - 
Open your browser Navigate to http://localhost:3000
 
npm run buildThe built files will be in the build/ directory, ready for deployment.
- Enter your Discord token to authenticate
 - Follow the in-app instructions to obtain your token securely
 ⚠️ Never share your Discord token with anyone
- Browse your Discord servers and channels
 - Select specific channels or DMs to work with
 - View channel information and member counts
 
- Preview messages in real-time before exporting
 - Search and filter messages
 - View attachments, embeds, and reactions
 
- Choose export format (JSON, HTML, CSV, TXT)
 - Set message limits and content options
 - Monitor export progress in real-time
 - Download exported files
 
- Upload and view previously exported chat files
 - Navigate between different channels
 - Search through exported messages
 - View rich content and attachments
 
src/
├── components/           # React components
│   ├── AuthComponent.tsx      # Authentication interface
│   ├── BrowseComponent.tsx    # Server/channel browser
│   ├── PreviewComponent.tsx   # Message preview
│   ├── ExportComponent.tsx    # Export interface
│   ├── ViewerComponent.tsx    # Chat viewer
│   └── SettingsComponent.tsx  # User settings
├── services/            # Business logic
│   ├── discordService.ts      # Discord API integration
│   ├── chatViewerService.ts   # Chat viewing
│   └── settingsService.ts     # User preferences
├── types/              # TypeScript definitions
│   └── index.ts               # Discord data interfaces
├── App.tsx             # Main application
└── index.css           # Global styles
- Token Storage: Tokens are stored only in memory during your session
 - No Persistence: No sensitive data is saved to disk
 - Secure Logout: Complete token cleanup on logout
 - API Security: Secure Discord API integration with proper headers
 
- Dark Theme: Discord-inspired dark color scheme
 - Responsive Layout: Adapts to all screen sizes
 - Loading States: Smooth loading animations
 - Error Handling: User-friendly error messages
 - Progress Tracking: Visual feedback for all operations
 - Keyboard Navigation: Full keyboard support
 
npm start- Start development servernpm run build- Build for productionnpm test- Run testsnpm run eject- Eject from Create React App
- TypeScript for type safety
 - ESLint for code quality
 - Prettier for formatting
 - Tailwind CSS for styling
 
- Fork the repository
 - Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
 
This project is licensed under the MIT License - see the LICENSE file for details.
- Discord for the amazing platform
 - React team for the excellent framework
 - Tailwind CSS for the utility-first CSS framework
 - Lucide for the beautiful icons
 
- GitHub Issues: Report bugs or request features
 - Discussions: Join community discussions
 
This application is for educational and personal use. Always respect Discord's Terms of Service and use responsibly. The developers are not responsible for any misuse of this tool.
Made with ❤️ by HassanXTech
⭐ Star this repository if you find it helpful!