A clean, minimalist news aggregator app with a black and white theme. Simple News provides a distraction-free reading experience while keeping you informed about the latest news.
- Clean, minimalist black and white UI design
- Real-time news updates
- Personalized news feed
- Offline reading capability
- Bookmark articles for later
- Share articles with friends
- Multiple news categories
- Dark mode support
This project uses an API key for the News API. Do not commit your API key to version control.
- Copy
.env.exampleto.envin the project root:cp .env.example .env
- Add your News API key to the
.envfile:API_KEY=your_actual_api_key_here
The app uses flutter_dotenv to load environment variables.
- Flutter SDK (latest stable version)
- Dart SDK (latest stable version)
- Android Studio / Xcode for mobile development
- VS Code (recommended) or your preferred IDE
- Clone the repository:
git clone https://github.com/sabiqsabry/simple-news.git
cd monotone_news- Install dependencies:
flutter pub get-
Set up your environment variables as described above.
-
Run the app:
flutter runThe app follows a clean architecture pattern with the following structure:
monotone_news/
├── lib/
│ ├── config/ # App configuration
│ ├── models/ # Data models
│ ├── providers/ # State management
│ ├── screens/ # UI screens
│ ├── services/ # API services
│ ├── themes/ # App theming
│ └── widgets/ # Reusable widgets
├── assets/
│ ├── images/ # Image assets
│ └── fonts/ # Font files
└── test/ # Test files
- provider: State management
- http: API calls
- shared_preferences: Local storage
- url_launcher: External links
- flutter_local_notifications: Push notifications
- google_fonts: Typography
- cached_network_image: Image caching
- intl: Internationalization
- flutter_dotenv: Environment variables
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Flutter team for the amazing framework
- News API for providing the news data
- All contributors who have helped shape this project