Skip to content

Refactor change the package name #33

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 20 commits into from
Jul 23, 2025
Merged

Conversation

fulleni
Copy link
Member

@fulleni fulleni commented Jul 23, 2025

Status

READY/IN DEVELOPMENT/HOLD

Description

Type of Change

  • ✨ New feature (non-breaking change which adds functionality)
  • 🛠️ Bug fix (non-breaking change which fixes an issue)
  • ❌ Breaking change (fix or feature that would cause existing functionality to change)
  • 🧹 Code refactor
  • ✅ Build configuration change
  • 📝 Documentation
  • 🗑️ Chore

fulleni added 20 commits July 23, 2025 12:00
…packages

- Replace headlines-toolkit dependencies with flutter-news-app-full-source-code equivalents
- Update repository URL and description in pubspec.yaml
- Add new dependencies for auth, data, http client, and UI kit
- Remove old ht_ prefixed dependencies
- Update dependabot configuration to ignore specific internal dependencies
- Rename deploy workflow to continuous delivery (CD)
- Upgrade actions-checkout from v3 to v4
- Upgrade peaceiris/actions-gh-pages from v3 to v4
- Update base href for web app deployment
- Replace `ht_` prefixed package imports with new package names
- Remove `Ht` prefix from class names and use new class names
- Update `KVStorageSharedPreferences` import path
- Rename `App` to `FlutterNewsAppWebDashboardFullSourceCodeApp`
- Update `bootstrap` function import
- Replace HtDataRepository with DataRepository
- Replace HtAuthRepository with AuthRepository
- Update import paths for core, data_repository, and auth_repository
- Remove unused imports and update class references
- Adjust exception handling from HtHttpException to HttpException
- Update AppConfig to remove unused demo factory
- Update App class constructors and method calls to use new repository names
- Change project name from 'ht_dashboard' to 'flutter_news_app_web_dashboard_full_source_code'
- Update GitHub URLs and repository paths
- Update demo link to reflect new project name
- Replace HtDataRepository with DataRepository
- Replace HtHttpException with HttpException
- Update import paths for core, data_repository, and ui_kit packages
- Simplify some code by removing unnecessary line breaks
- Update import paths for core, ui_kit, and auth_repository packages
- Replace HtAuthRepository with AuthRepository
- Replace HtHttpException with HttpException
- Simplify emit statements in AuthenticationBloc
…web_dashboard_full_source_code

- Replace 'ht_dashboard' package imports with 'flutter_news_app_web_dashboard_full_source_code'
- Update 'ht_ui_kit' to 'ui_kit'
- Apply consistent package import structure across multiple files
…kages

- Replace ht_data_repository with data_repository package
- Replace ht_shared with core package
- Update import paths for l10n, router, and ui_kit
- Adjust exception handling from HtHttpException to HttpException
- Simplify some code and improve readability
- Replace HT specific packages with generic ones
- Update DataRepository import path
- Replace HtHttpException with generic HttpException
- Update import paths for UI kit and localization
- Replace HtDataRepository with DataRepository
- Update import paths to use core and data_repository packages
- Replace HtHttpException with HttpException
- Simplify some widget code and remove redundant packages
- Change import path from 'package:ht_dashboard/l10n/app_localizations.dart'
  to 'package:flutter_news_app_web_dashboard_full_source_code/l10n/app_localizations.dart'
- This modification affects the AppLocalizationsX extension method
- Update import paths for auth repository and related packages
- Replace HtAuthRepository with AuthRepository in router and authentication bloc
- Update package paths to reflect new project structure
- Replace 'ht_dashboard/l10n/l10n.dart' with 'flutter_news_app_web_dashboard_full_source_code/l10n/l10n.dart'
- Add 'core/core.dart' import
- Remove 'ht_shared/ht_shared.dart' import
- Remove dependencies from main section
- Move bloc and related dependencies to individual packages
- Reorder dependencies alphabetically
- Update package imports to use git repositories
- Redesigned header with logo and badges
- Updated project description and features list
- Added new sections: Dashboard Analytics, Robust User Authentication, Responsive Web UI
- Improved readability with better formatting and structure
- Updated license information and added purchase options
- Clarified getting started instructions
- Move running instructions closer to the prerequisite section
- Improve formatting and readability of code examples
- Maintain note about backend service for development environment
Added a comment line in the README.md to explain the usage of `AppEnvironment.production` for connecting to a live backend API.
- Change app name from "Flutter News App Toolkit" to "Flutter News App Dashboard"
- Update environment note to clarify backend service is needed for both development and production
- Change app title from "Headlines Toolkit" to "Flutter News App Dashboard"
- Update manifest.json to reflect new app name
@fulleni fulleni merged commit b9f5f1b into main Jul 23, 2025
1 check failed
@fulleni fulleni deleted the refactor-change-the-package-name branch July 23, 2025 11:24
Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary of Changes

Hello @fulleni, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request undertakes a significant refactoring effort to rename the project's internal packages and update its branding. The changes are pervasive, touching nearly every file to align with the new naming convention and improve the overall clarity and maintainability of the codebase. This is a breaking change that re-establishes the project's identity and modular structure.

Highlights

  • Major Refactoring: Package Renaming: The core change in this PR is a comprehensive refactoring to rename all internal packages. Previously prefixed with ht_ (e.g., ht_auth_repository, ht_data_repository), these packages are now named without the prefix (e.g., auth_repository, data_repository). This impacts pubspec.yaml, pubspec.lock, and all import statements throughout the codebase.
  • Codebase Adaptation to New Package Structure: Across numerous files, import paths have been updated, and class/type references (e.g., HtAuthRepository to AuthRepository, HtHttpException to HttpException) have been adjusted to align with the new package naming convention. Constructor parameters and field names have also been updated to remove the ht_ prefix.
  • Branding and Documentation Update: The project's branding has been updated from 'Headlines Toolkit' to 'Flutter News App Dashboard'. This change is reflected in the README.md file, web/index.html title, and web/manifest.json names, along with updated repository URLs and licensing information.
  • Dependabot Configuration Update: The .github/dependabot.yaml file's ignore list has been updated from a generic ht_* wildcard to explicitly list all the newly renamed internal packages, ensuring proper dependency management.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments or fill out our survey to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request is a comprehensive refactoring of the project and package names. The changes have been applied consistently across all files, including source code, dependency configurations, and documentation. The core logic of the application remains unchanged. I've provided suggestions to improve the README.md file and simplify exception handling in the BLoC files. Overall, this is a well-executed, large-scale renaming effort.


> *<p style="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>*

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The use of raw HTML (<p>) and inline styles within a Markdown blockquote (>) is unconventional and can lead to inconsistent rendering across different Markdown viewers. The * surrounding the <p> tag might also not produce the intended italicization reliably.

For better portability and maintainability, it's recommended to stick to standard Markdown syntax where possible. If the grey color is not a strict requirement, you can simplify this to a standard italicized blockquote, which is cleaner and more idiomatic.

Suggested change
> *<p style="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>*
> 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.

Comment on lines +100 to +101
// Catch any other HttpException subtypes
emit(state.copyWith(status: AuthenticationStatus.failure, exception: e));

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Consider using core/core.dart's HttpException instead of catching all HttpException subtypes individually. This simplifies the code and reduces redundancy.

    } on HttpException catch (e) {
      // Catch any other HttpException subtypes
      emit(state.copyWith(status: AuthenticationStatus.failure, exception: e));
    }

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant