A modern web application for creating and previewing Discord embeds with a rich UI and real-time preview.
- 🎨 Real-time Discord embed preview
 - 📝 Rich markdown editor with syntax highlighting
 - 🎯 Intuitive UI components based on Radix UI
 - 🌈 Advanced color picker for customization
 - 😄 Emoji picker integration
 - 📅 Date and time selection tools
 - 🔒 Authentication system
 - ⚡ Built with performance in mind using Astro
 
- Framework: Astro with React integration
 - UI Components: Radix UI
 - Styling: TailwindCSS
 - Discord Components: @skyra/discord-components-react
 - Authentication: Built-in auth system with SQLite storage
 - Form Handling: React Hook Form with Zod validation
 - State Management: Nanostores
 - Database: SQLite with Drizzle ORM
 
- Node.js 18 or higher
 - npm or yarn
 
- Clone the repository:
 
git clone https://github.com/yourusername/embedra.git
cd embedra- Install dependencies:
 
npm install- Copy the example environment file and configure your environment variables:
 
cp .env.example .env- Start the development server:
 
npm run devThe application will be available at http://localhost:4321
npm run dev- Start development servernpm run build- Build for productionnpm run preview- Preview production buildnpm run astro- Run Astro CLI commands
The project structure follows Astro's conventions:
src/
├── assets/         # Static assets
├── components/     # React components
│   └── ui/         # Reusable UI components
├── layouts/        # Astro layouts
├── lib/           # Utility functions and helpers
├── pages/         # Astro pages
│   └── api/       # API routes
├── store/         # Nanostores state management
└── styles/        # Global styles
MIT
Contributions are welcome! Please feel free to submit a Pull Request.