You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Flutter News App - Web Dashboard Full Source Code
7
5
8
-
`ht_dashboard` is a Flutter web application designed as a comprehensive content management and administration interface for the [Headlines Toolkit](https://github.com/headlines-toolkit) ecosystem. It provides a powerful, intuitive platform for managing news content, application configurations, and user-related settings, complementing the [mobile app](https://github.com/headlines-toolkit/ht-main) and the [backend service](https://github.com/headlines-toolkit/ht-api).
This is a complete and fully-functional Flutter web application for comprehensive content management and administration. It is a key component of the [**flutter news app full source code toolkit**](https://github.com/flutter-news-app-full-source-code), an ecosystem that also includes a dart frog [backend API](https://github.com/flutter-news-app-full-source-code/flutter-news-app-api-server-full-source-code) and a [mobile client](https://github.com/flutter-news-app-full-source-code/flutter-news-app-mobile-client-full-source-code).
11
15
12
-
`ht_dashboard` offers a robust set of tools for efficient administration:
16
+
## ⭐ Everything You Get, Ready to Go
17
+
18
+
This dashboard comes packed with all the features you need to manage a professional news application.
13
19
14
20
#### 📰 **Comprehensive Content Management**
15
-
Effortlessly manage all aspects of your news content, including:
16
-
***Headlines:** Create, edit, and delete news articles.
17
-
***Categories:** Organize and define news categories.
21
+
Effortlessly manage all aspects of your news content with full CRUD (Create, Read, Update, Delete) capabilities:
22
+
***Headlines:** Create, edit, and publish news articles.
23
+
***Topics:** Organize and define news topics.
18
24
***Sources:** Maintain and update news sources.
19
-
***Benefit for you:**Centralized control over your content, ensuring accuracy and consistency across your news platform. ✍️
25
+
> **Your Advantage:**You get a powerful, centralized system to control your content, ensuring accuracy and consistency across your news platform. ✍️
20
26
21
27
#### ⚙️ **Dynamic Application Configuration**
22
-
Control the behavior and appearance of the `ht_main`mobile application remotely:
23
-
***User Preference Limits:** Set limits for followed items and saved headlines
24
-
based on user roles (Guest, Authenticated, Premium).
25
-
***Ad Settings:**Configure ad frequency and placement intervals for
26
-
different user tiers.
27
-
***In-App Prompts:**Manage the display frequency of account-related
28
-
calls-to-action.
29
-
***Operational Status (Kill Switch):** Remotely enable maintenance mode or
30
-
disable the app.
31
-
***Force Update:**Mandate or suggest app updates to users.
32
-
***Benefit for you:**Granular control over app features and monetization
33
-
strategies without requiring app store updates. 🚀
34
-
35
-
#### 📊 **Intuitive User Interface**
36
-
Built with Flutter, the dashboard provides a responsive and user-friendly
37
-
experience across various web browsers and screen sizes.
38
-
***User-Friendly Error Handling:** Displays clear, localized error messages for a smooth and understandable user experience when issues arise.
39
-
***Benefit for you:** A modern, maintainable, and visually appealing
40
-
interface for your administrative tasks. ✨
28
+
Control the behavior and appearance of the mobile application remotely:
29
+
***User Preference Limits:** Set limits for followed items and saved headlines based on user roles (Guest, Authenticated, Premium).
30
+
***Ad Settings:** Configure ad frequency and placement intervals for different user tiers.
31
+
***In-App Prompts:**Manage the display frequency of account-related calls-to-action.
32
+
***Operational Status:** Remotely enable maintenance mode or suggest app updates to users.
33
+
> **Your Advantage:**Granular control over app features and monetization strategies without requiring app store updates. 🚀
34
+
35
+
#### 📊 **Dashboard Analytics**
36
+
Get a quick overview of your content ecosystem with key statistics:
37
+
***Content Counts:**View the total number of headlines, topics, and sources at a glance.
38
+
> **Your Advantage:**Instantly understand the scale of your content operation. 📈
39
+
40
+
#### 🔐 **Robust User Authentication**
41
+
Secure and flexible authentication flows are built-in for administrators and publishers using Email + Code (Passwordless) Sign-In.
42
+
> **Your Advantage:** All the complex security and user management for your administrative team is already done for you. ✅
43
+
44
+
#### 🖥️ **Responsive Web UI**
45
+
Built with `flutter_adaptive_scaffold`, the dashboard offers a clean, responsive interface that looks great on any screen size.
46
+
> **Your Advantage:** Deliver a consistent and optimized administrative experience on desktops, tablets, and even mobile browsers. ↔️
41
47
42
48
#### 🏗️ **Clean & Modern Architecture**
43
49
Developed with best practices for a maintainable and scalable codebase:
44
50
***Flutter & Dart:** Cutting-edge web development.
45
51
***BLoC Pattern:** Predictable and robust state management.
46
52
***GoRouter:** Well-structured and powerful navigation.
47
-
***Adaptive UI:** Responsive layouts using `flutter_adaptive_scaffold` for
48
-
optimal experience on different screen sizes.
49
-
***Benefit for you:** An easy-to-understand, extendable, and testable
50
-
foundation for your project. 📈
53
+
> **Your Advantage:** The dashboard is built on a clean, modern architecture that's easy to understand and maintain. It's solid and built to last. 📈
54
+
55
+
#### ⚙️ **Flexible Environment Configuration**
56
+
Easily switch between development (in-memory data or local API) and production environments with a simple code change. This empowers rapid prototyping, robust testing, and seamless deployment.
57
+
> **Your Advantage:** A flexible setup that speeds up your development cycle and makes deployment simple. 🚀
51
58
52
59
#### 🌍 **Localization Ready**
53
-
Fully internationalized with working English and Arabic localizations (`.arb` files).
54
-
***Benefit for you:** Easily adapt your dashboard for a global team. 🌐
60
+
Fully internationalized with working English and Arabic localizations (`.arb` files). Adding more languages is straightforward.
61
+
> **Your Advantage:** Easily adapt your dashboard for a global team. 🌐
55
62
56
63
---
57
64
58
-
## 🔑 Access and Licensing
65
+
## 🔑 License: Source-Available with a Free Trial
59
66
60
-
`ht_dashboard` is source-available as part of the Headlines Toolkit ecosystem.
67
+
Get started for free and purchase when you're ready to launch!
61
68
62
-
To acquire a commercial license for building unlimited news applications, please visit
63
-
the [Headlines Toolkit GitHub organization page](https://github.com/headlines-toolkit)
64
-
for more details.
69
+
***TRY IT:** Download and explore the full source code under the polyForm free trial [license](LICENSE). Perfect for evaluation.
70
+
***BUY IT:** Get an unlimited commercial lifetime license with a **one-time payment**. No subscriptions!
71
+
***GET YOURS:**[**Purchase via GitHub Sponsors**](https://github.com/sponsors/flutter-news-app-full-source-code).
65
72
73
+
> *<pstyle="color:grey">Note: The single purchase provides a comprehensive commercial license covering every repository within the [Flutter News App - Full Source Code Toolkit](https://github.com/flutter-news-app-full-source-code) organization. No separate purchases are needed for the API or mobile client.</p>*
66
74
---
67
75
68
-
## 🚀 Getting Started
76
+
## 🚀 Getting Started & Running Locally
69
77
70
78
1.**Ensure Flutter is installed.** (See [Flutter documentation](https://flutter.dev/docs/get-started/install))
To run the app, first selectyour desired environment in`lib/main.dart`:
91
+
92
+
```dart
93
+
// lib/main.dart
94
+
95
+
// Use `AppEnvironment.demo` to run with in-memory data (no API needed).
96
+
// Use `AppEnvironment.development` to connect to a local backend API.
97
+
// Use `AppEnvironment.production` to connect to a live backend API.
98
+
const appEnvironment = AppEnvironment.demo;
99
+
```
100
+
101
+
Then, run the app from your terminal:
81
102
```bash
82
103
flutter run -d chrome
83
-
# Or to run on a web server (e.g., for CORS testing with ht_api)
84
-
# flutter run -d web-server --web-hostname 0.0.0.0 --web-port 3000
85
104
```
86
-
*(Note: For full functionality, ensure the `ht_api` backend service is running and accessible. If running `ht_api` locally, ensure its `CORS_ALLOWED_ORIGIN` environment variable is configured to allow requests from the dashboard's origin, e.g., `http://localhost:3000` if using the web-server option.)*
105
+
*(Note: For `development/production` environment, ensure the [backend service](https://github.com/flutter-news-app-full-source-code/flutter-news-app-api-server-full-source-code) is running.)*
87
106
88
107
---
89
108
@@ -94,5 +113,3 @@ This project aims for high test coverage to ensure quality and reliability.
94
113
* Run tests with:
95
114
```bash
96
115
flutter test
97
-
```
98
-
*(Note: Ensure `very_good_cli` is activated: `dart pub global activate very_good_cli`)*
0 commit comments