flutter_any_logo 1.0.0 copy "flutter_any_logo: ^1.0.0" to clipboard
flutter_any_logo: ^1.0.0 copied to clipboard

All logos are included in this package to provide the largest logo library in flutter. It covers, fashion. Sports, Entertainment, SocialMedia etc...

Flutter Any Logo đŸ’¯ #

Deploy Dev

Our aim is to implement 1000+ logos but keep the package as light as possible. đŸĒŊ #

logos

A Flutter plugin that provides asset images for popular industry categories. It includes 5 main classes, Sports, Fashion, Tech, Daily, and Media, each extending their respective interface. This plugin can be useful for projects that require industry-related images. This plugin can be useful for various projects, such as Quiz app, Catalogs, eCommerce App, Templates, Websites, and more. It can be especially usefu l for projects that require industry-related images.

Screenshots #

Logos 1 Logos 2
demo1 demo2

Installation #

Add flutter_any_logo as a dependency in your pubspec.yaml file.

dependencies:
  flutter_any_logo: ^1.0.0

Then, run flutter pub get in your terminal to install the plugin.

Usage #

Import the flutter_any_logo package in your Dart code:

import 'package:flutter_any_logo/flutter_any_logo.dart';

You can now use the provided AnyLogo widget to display the logos in your app. For example, to display the Instagram logo:

AnyLogo.media.instagram

More examples

import 'package:flutter_any_logo/flutter_any_logo.dart';

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Center(
      child: GridView.count(
        crossAxisCount: 5,
        children: [
          ...AnyLogo.cricket.values.map((e) => e.image()).toList(),
          ...AnyLogo.nba.values.map((e) => e.image()).toList(),
          ...AnyLogo.fashion.values.map((e) => e.image()).toList(),
          ...AnyLogo.uefa.values.map((e) => e.image()).toList(),
          ...AnyLogo.daily.values.map((e) => e.image()).toList(),
          ...AnyLogo.tech.values.map((e) => e.image()).toList(),
          ...AnyLogo.nfl.values.map((e) => e.image()).toList(), 
          ...AnyLogo.media.values.map((e) => e.image()).toList(),
        ],
      ),
    );
  }
}

Variables #

if you want to have access to a type a static method is available


// Single Assets Image NBA
 AnyLogo.daily.mcDonalds

//Access all values in a type
 AnyLogo.nba.values

//Access the Image
AnyLogo.uefa.manchesterUnited.image()

// Key? key,   
// AssetBundle? bundle,  
// Widget Function(BuildContext, Widget, int?, bool)? frameBuilder,
// Widget Function(BuildContext, Object, StackTrace?)? errorBuilder, 
// String? semanticLabel,  
// bool excludeFromSemantics = false, 
// double? scale,  
// double? width, 
// double? height, 
// Color? color,   
// Animation<double>? opacity,
// BlendMode? colorBlendMode,  
// BoxFit? fit, 
// AlignmentGeometry alignment = Alignment.center, 
// ImageRepeat repeat = ImageRepeat.noRepeat,  
// Rect? centerSlice, 
// bool matchTextDirection = false, 
// bool gaplessPlayback = false,
// bool isAntiAlias = false, 
// String? package, 
// FilterQuality filterQuality = FilterQuality.low, 
// int? cacheWidth,  
// int? cacheHeight,
// All the variables are sill available
AnyLogo.nba.image(height: 30, fit: BoxFit.contain);


//You can still pass just the asset image without calling [.image()]
Image(image: AssetImage(AnyLogo.nba.atlanta.path)),

// UEFA section contains football teams âšŊī¸
AnyLogo.uefa.acMilan
AnyLogo.uefa.barcelona

// Daily section contains everyday brands food related etc.. 🍟
AnyLogo.daily.gillette
AnyLogo.daily.nutella
AnyLogo.daily.kellogs

// NFL section contains nfl teams 🏈
AnyLogo.nfl.nflArizonaCardinals
AnyLogo.nfl.nflBuffaloBills

// Fashion section contains clothing / perfume / luxury / watches ⌚ī¸
AnyLogo.fashion.louisVuitton
AnyLogo.fashion.gucci
AnyLogo.fashion.prada

// NBA section contains all nba teams 🏀
AnyLogo.nba.miamiHeat
AnyLogo.nba.losAngelesClippers
AnyLogo.nba.goldenStateWarriors

// Tech contains all brands and tech companies  🕹ī¸
AnyLogo.tech.playstation
AnyLogo.tech.siemens
AnyLogo.tech.visa

// Media section contains social media and area like 🛜
AnyLogo.media.instagram
AnyLogo.media.tiktok
AnyLogo.media.facebook

// Cricket section contains social media and area like 🏏
AnyLogo.cricket.cscs
AnyLogo.cricket.gurajatLions
AnyLogo.cricket.mumbaiIndians

Warning ⚠ī¸ #

😁 New Logos are constantly uploaded and we may have not uploaded a 
logo you think should be part of the library. Feel free to open an Pull request to have your logo added.

Test Strategy #

PNG File Upload Validation

Objective:

To ensure that only PNG files with a size of 400kb or less are uploaded to the application.

Scope:

This test strategy covers the validation of PNG file uploads in the application. Specifically, it covers the validation of PNG file types and size limits.

Approach:

The testing approach for this test strategy will involve a combination of manual and automated testing techniques. The automated testing will be implemented as part of the continuous integration (CI) pipeline using GitHub Actions. The manual testing will be performed by the testing team. The Unit testing ensure the files are properly loaded

Test Types:

  • Automated Testing:
    • Static code analysis to enforce linting rules for file types and size limits.Automated testing will be performed as part of the CI pipeline for every code push or pull request
  • Unit Testing:
    • widget testing ensures the logos are properly loaded and rendered
  • Manual Testing:
    • Functional testing to verify that PNG files with a size of 400kb or less can be uploaded successfully
    • Exploratory testing to identify any edge cases or potential issues related to PNG file uploads
    • Manual testing will be performed on an as-needed basis during the testing phase of the development cycle.

Test Environment:

  • Development environment: Flutter framework
  • Operating system: Windows, MacOS, Linux
  • Test environment: Local and staging servers

Test Cases:

  1. Verify that only PNG files with a size of 400kb or less can be uploaded.
  2. Verify that an error message is displayed when attempting to upload a non-PNG file.
  3. Verify that a success message is displayed when a PNG file with a size of 400kb or less is uploaded successfully.
  4. Verify that the application is able to handle edge cases, such as large or corrupted PNG files.

Contributing #

Contributions to flutter_any_logo are welcome! If you find a bug or would like to suggest a new logo, please create an issue on the GitHub repository. If you want to contribute to this open source project hosted on GitHub, follow these steps. Here's a quick guide on how to get started.

Step: 1

To make changes to a project, you need to follow these steps

  1. Fork the project
  2. Locate the PNG file that you want to add to the project. add it to assets/
  3. If you added a new sub directory update the pubspec.yaml file.

Step 2:

Once you have added the PNG file to your forked repository, you'll need to install the dependencies and build the project before you can see your changes.

  1. Open a terminal window and navigate to the project directory.
  2. Run the command make install to install the dependencies.
  3. this will install gnu-sed using brew. Make sure HomeBrew is installed
  4. if gnu-sed is already installed no need just run make deploy.

Step 3:

Make sure you checkout and create a branch following this format:

<issueNumber> feat: implement <logoName> to the project


#34 feat: implement `kodak` logo to the project.

License #

flutter_any_logo is released under the MIT License.

30
likes
0
pub points
84%
popularity

Publisher

verified publisherjordyhers.com

All logos are included in this package to provide the largest logo library in flutter. It covers, fashion. Sports, Entertainment, SocialMedia etc...

Repository (GitHub)
View/report issues

Funding

Consider supporting this project:

patreon.com

License

unknown (LICENSE)

Dependencies

flutter, flutter_web_plugins, plugin_platform_interface

More

Packages that depend on flutter_any_logo