Skip to content

Commit 88cb7ca

Browse files
committed
docs: initial README.md file for ht_dashboard
1 parent 00e5f52 commit 88cb7ca

File tree

1 file changed

+97
-0
lines changed

1 file changed

+97
-0
lines changed

README.md

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
# 📊✨ ht_dashboard
2+
3+
![coverage: percentage](https://img.shields.io/badge/coverage-XX-green)
4+
[![Demo: Live](https://img.shields.io/badge/Demo-Live-orange)](https://headlines-toolkit.github.io/ht-dashboard/)
5+
[![style: very good analysis](https://img.shields.io/badge/style-very_good_analysis-B22C89.svg)](https://pub.dev/packages/very_good_analysis)
6+
[![License: PolyForm Free Trial](https://img.shields.io/badge/License-PolyForm%20Free%20Trial-blue)](https://polyformproject.org/licenses/free-trial/1.0.0)
7+
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 [ht_main mobile app](https://github.com/headlines-toolkit/ht-main) and the [ht_api backend service](https://github.com/headlines-toolkit/ht-api).
9+
10+
## ⭐ Features & Capabilities
11+
12+
`ht_dashboard` offers a robust set of tools for efficient administration:
13+
14+
#### 📰 **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.
18+
* **Sources:** Maintain and update news sources.
19+
* **Benefit for you:** Centralized control over your content, ensuring accuracy and consistency across your news platform. ✍️
20+
21+
#### ⚙️ **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+
* **Benefit for you:** A modern, maintainable, and visually appealing
39+
interface for your administrative tasks. ✨
40+
41+
#### 🏗️ **Clean & Modern Architecture**
42+
Developed with best practices for a maintainable and scalable codebase:
43+
* **Flutter & Dart:** Cutting-edge web development.
44+
* **BLoC Pattern:** Predictable and robust state management.
45+
* **GoRouter:** Well-structured and powerful navigation.
46+
* **Adaptive UI:** Responsive layouts using `flutter_adaptive_scaffold` for
47+
optimal experience on different screen sizes.
48+
* **Benefit for you:** An easy-to-understand, extendable, and testable
49+
foundation for your project. 📈
50+
51+
#### 🌍 **Localization Ready**
52+
Fully internationalized with working English and Arabic localizations (`.arb` files).
53+
* **Benefit for you:** Easily adapt your dashboard for a global team. 🌐
54+
55+
---
56+
57+
## 🔑 Access and Licensing
58+
59+
`ht_dashboard` is source-available as part of the Headlines Toolkit ecosystem.
60+
61+
To acquire a commercial license for building unlimited news applications, please visit
62+
the [Headlines Toolkit GitHub organization page](https://github.com/headlines-toolkit)
63+
for more details.
64+
65+
---
66+
67+
## 🚀 Getting Started
68+
69+
1. **Ensure Flutter is installed.** (See [Flutter documentation](https://flutter.dev/docs/get-started/install))
70+
2. **Clone the repository:**
71+
```bash
72+
git clone https://github.com/headlines-toolkit/ht-dashboard.git
73+
cd ht-dashboard
74+
```
75+
3. **Get dependencies:**
76+
```bash
77+
flutter pub get
78+
```
79+
4. **Run the app for web:**
80+
```bash
81+
flutter run -d chrome
82+
# Or to run on a web server (e.g., for CORS testing with ht_api)
83+
# flutter run -d web-server --web-hostname 0.0.0.0 --web-port 3000
84+
```
85+
*(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.)*
86+
87+
---
88+
89+
## ✅ Testing
90+
91+
This project aims for high test coverage to ensure quality and reliability.
92+
93+
* Run tests with:
94+
```bash
95+
flutter test
96+
```
97+
*(Note: Ensure `very_good_cli` is activated: `dart pub global activate very_good_cli`)*

0 commit comments

Comments
 (0)