micons 0.0.3 copy "micons: ^0.0.3" to clipboard
micons: ^0.0.3 copied to clipboard

M-Icons is a collection of icons for Flutter.

M-Icons #

M-Icons is a free icon pack for Flutter applications, providing a wide range of high-quality icons to enhance your Flutter projects. Our icons are designed to be simple, scalable, and adaptable to any application theme.

Flutter Iconly Web

Package Installation #

To use M-Icons in your Flutter project, add the package to your pubspec.yaml file:

dependencies:
  flutter:
    sdk: flutter
  micons: ^0.0.3

or run this command:

flutter pub add micons

Search Icons.

Flutter Iconly Web

Usage #

After installation, you can start using the icons in your Flutter application. Here is a simple example of how to use an icon from M-Icons using the MIcons widget:

import 'package:flutter/material.dart';
import 'package:m_icons/m_icons.dart';

class MyWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MIcons(
      icon: MiCons.badgeCheck, // Use the icon you need from MIcons
      color: Colors.black, // Icon color
      size: 80, // Icon size
      filled: true, // Filled style if available
    );
  }
}

In this example, MiCons.badgeCheck is the icon being used, but you can replace MiCons.badgeCheck with any icon name from the M-Icons pack that suits your needs.

File Uploader #

M-Icons also provides a convenient file uploader feature that allows you to easily upload files to your desired location. Below is an example of how to use the file uploader:

Upload #

MIconsUploader.uploadFiles(
  files: files,
  apiKey: "API_KEY",
  folder: "FOLDER_NAME",
).listen(
  (progress) {
    log("Progress for ${progress.fileKey} is ${progress.progress * 100}%");
    if (progress.url != null) {
      uploadedUrls[progress.fileKey] = progress.url!;
    }
    if (progress.urls != null) {
      uploadedUrls = progress.urls!;
    }
  },
  onDone: () {
    log("All files uploaded. URLs:");
    uploadedUrls.forEach((key, url) {
      log("File key: $key, URL: $url");
    });
  },
  onError: (error) {
    log('Error in upload stream: $error');
  },
);

Upload Example #

import 'dart:io';
import 'package:flutter/material.dart';
import 'package:image_picker/image_picker.dart';
import 'package:m_icons/m_icons_uploader.dart';

class FileUploaderWidget extends StatefulWidget {
  @override
  _FileUploaderWidgetState createState() => _FileUploaderWidgetState();
}

class _FileUploaderWidgetState extends State<FileUploaderWidget> {
  Map<String, File> files = {};
  Map<String, String> uploadedUrls = {};

  void imagePicker() async {
    ImagePicker picker = ImagePicker();
    final XFile? image = await picker.pickImage(source: ImageSource.gallery);
    if (image != null) {
      files["image"] = File(image.path);
      MIconsUploader.uploadFiles(
        files: files,
        apiKey: "API_KEY",
        folder: "FOLDER_NAME",
      ).listen(
        (progress) {
          log("Progress for ${progress.fileKey} is ${progress.progress * 100}%");
          if (progress.url != null) {
            uploadedUrls[progress.fileKey] = progress.url!;
          }
          if (progress.urls != null) {
            uploadedUrls = progress.urls!;
          }
        },
        onDone: () {
          log("All files uploaded. URLs:");
          uploadedUrls.forEach((key, url) {
            log("File key: $key, URL: $url");
          });
        },
        onError: (error) {
          log('Error in upload stream: $error');
        },
      );
    }
  }

  @override
  Widget build(BuildContext context) {
    return Column(
      children: [
        ElevatedButton(
          onPressed: imagePicker,
          child: Text('Upload Image'),
        ),
        // Display uploaded URLs or progress here
      ],
    );
  }
}

In this example, the imagePicker method uses the image_picker package to select an image from the gallery and the MIconsUploader.uploadFiles method to upload the selected file. The upload progress and URLs are logged for your reference.

Contributing #

We welcome contributions to M-Icons! If you have suggestions for new icons or improvements, please open an issue or submit a pull request on our GitHub repository.

This README file includes the sections for installation, usage of icons, the file uploader feature, and contributing information.

13
likes
125
points
1
downloads

Publisher

unverified uploader

Weekly Downloads

M-Icons is a collection of icons for Flutter.

Repository (GitHub)
View/report issues

Documentation

API reference

License

GPL-3.0 (license)

Dependencies

cloudinary, flutter, flutter_svg

More

Packages that depend on micons