Dragon News is a modern, responsive news portal built with React and Firebase. It provides users with the latest news across various categories, featuring a clean and intuitive interface for an optimal reading experience.
- User Authentication: Secure login and registration system using Firebase Authentication
- Category-based News: Browse news articles filtered by categories
- Latest News Ticker: Stay updated with breaking news via a scrolling ticker
- Responsive Design: Optimized for all device sizes using Tailwind CSS
- Article Details: Detailed view for each news article with related information
- Social Media Integration: Share articles and connect via social media platforms
- Frontend: React 19, React Router 7
- Styling: Tailwind CSS 4, DaisyUI 5
- Authentication: Firebase Authentication
- Hosting: Firebase Hosting
- Icons: React Icons
- Date Formatting: date-fns
- Build Tool: Vite
src/
├── Components/ # Reusable UI components
├── Firebase/ # Firebase configuration
├── Layouts/ # Page layout components
├── Pages/ # Main page components
├── Provider/ # Context providers
├── Routes/ # Application routing
└── assets/ # Static assets (images, etc.)
- Node.js (v16 or higher)
- npm or yarn
-
Clone the repository
git clone https://github.com/yourusername/dragon-news.git cd dragon-news
-
Install dependencies
npm install # or yarn
-
Create a
.env
file in the root directory with your Firebase configurationVITE_apiKey=your-api-key VITE_authDomain=your-auth-domain VITE_projectId=your-project-id VITE_storageBucket=your-storage-bucket VITE_messagingSenderId=your-messaging-sender-id VITE_appId=your-app-id
-
Start the development server
npm run dev # or yarn dev
-
Open your browser and navigate to
http://localhost:5173
npm run build
# or
yarn build
The project is configured for Firebase Hosting. To deploy:
-
Install Firebase CLI if you haven't already
npm install -g firebase-tools
-
Login to Firebase
firebase login
-
Initialize Firebase (if not already done)
firebase init
-
Deploy to Firebase
firebase deploy
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- React team for the amazing library
- Firebase for authentication and hosting services
- All contributors and supporters of the project