Pixelarticons - Pixel Art Icons made simple for Flutter, powered by pixelarticons and fontify

Overview

#dart, #flutter, #package, #icons

Pixel Art Icons

Dart package to use pixelarticons in Flutter


⚠️ Original author

I'm neither the creator or the author of these icons, the original author is @halfmage on the pixelarticons

So, please if you like these icons, thanks to @halfmage! and show support on the original repository!

This package is just an automated tool to generate the font from the svg icons created by @halfmage

How to use

1. Install the package

You can also check the on pub.dev

flutter pub add pixelarticons

2. Import in to the project

Import wherever you want

import 'package:pixelarticons/pixelarticons.dart';

3. Use as IconData

pixelarticons is the same of Icons class but renamed to Pixel

Be aware:

  • Lower-case for all icons and no separators, for example card-plus is written as Pixel.cardplus
  • Icons that starts with non-alpha characters, like 4k, 4k-box, 4g are prefixed with k
  • Icons that are Dart keywords, like switch are prefix with k as well

So use k4k, k4kbox, kswitch instead

/// 4k icon:
Icon(Pixel.k4k)

/// switch icon:
Icon(Pixel.kswitch)

/// align-left icon:
Icon(Pixel.alignleft);

Why

You can download directly from the source, but you'll need convert all the svgs to font and generate the Dart classes... and you'll repeat the process if you want to include a new released icon in the future

So this library was made to fix this gap. Lets allow the machine do the hard work for us and we focus on the human and important part of using the icons to improve the UX and UI of the app

Contribute

As you can see, I'm not native English speaker, so this library certainly has many gramatical errors, typo, and wrong words. So if you have a proficient English you can contribute by fixing all these documentation errors!

If you can improve the tool, please, feel free to open a issue to discuss, I'll appreciate it!

Also, if you miss any icon, please ping me on the repository issues or Discord laks#1712, I'll take care to verify and trigger the update, thanks!

Flow

This library works automatically:

  • /download contains a python script that downloads svg from all icons of pixelarticons
  • /lib contains an entry point that exports the generated icon classes (generated by fontify)

This flow is powered by GitHub actions, and the triggers are:

  • scheduled: once a month we'll check if new icons are available, if so we'll update the pub.dev library otherwise we'll just ignore the possible update
  • manually: if we go to actions tab, we can trigger the flow.yaml action clicking run over the action card (need repo write access)

How to generate the icons

Environment

Dart SDK version: 2.14.4 (stable)
Python 3.9.9

Working dir: ~/

1. Download icons using Python

py download/download.py

2. Generate classes with fontify

Add fontify as global dependency

dart pub global activate fontify

Run fontify

dart pub global run fontify

Done, you'll see a folder called ~/release and a font ~/fonts/pixelarticons.otf

What you want is the font inside the ~/fonts folder, the ~/release folder should be ignored. Now you can publish or do whatever you want!

Breaking Change Exception

This means that this tool can't find the latest release of the pixelarticons repository

But this can have several causes, so the best way to fix that is to first figure out where the icons are located in the original repository and then update the ~/download/download.py script to fix/cover the breaking changes if they exists (this error can also be caused by a simple python exception)

Please fill a issue to see what is going wrong and do not worry: all current releases and versions will be available


Open Source

Copyright © 2022-present, Laks Castro.

Pixel Art Icons Dart Wrapper is MIT licensed 💖

Owner
lask
always failing but always trying
lask
A responsive package for Buttons, DropMenus and Combinations

A responsive package for Buttons, DropMenus and Combinations, This module makes the process a lot easier !

Skr Phoenix YT 0 Jan 30, 2022
MiniJVM is simple java virtual machine written by python language, it can load class file from file system and run it.

MiniJVM MiniJVM是一款使用python编写的简易JVM,能够从本地加载class文件并且执行绝大多数指令。 支持的功能 1.从本地磁盘加载class并解析 2.支持绝大多数指令集的执行 3.支持虚拟机内存分区以及对象的创建 4.支持方法的调用和参数传递 5.支持静态代码块的初始化 不支

keguoyu 60 Apr 01, 2022
Module-based cryptographic tool

Cryptosploit A decryption/decoding/cracking tool using various modules. To use it, you need to have basic knowledge of cryptography. Table of Contents

/SNESE_AR\ 33 Nov 27, 2022
Datargsing is a data management and manipulation Python library

Datargsing What is It? Datargsing is a data management and manipulation Python library which is currently in deving Why this library is good? This Pyt

CHOSSY Lucas 10 Oct 24, 2022
Scientific color maps and standardization tools

Scicomap is a package that provides scientific color maps and tools to standardize your favourite color maps if you don't like the built-in ones. Scicomap currently provides sequential, bi-sequential

Thomas Bury 14 Nov 30, 2022
HOWTO: Downgrade from nYNAB to YNAB4

HOWTO: Downgrade from nYNAB to YNAB4 This page explains how to move from nYNAB to YNAB4 while retaining as much information as possible. See Appendix

Tobias Kunze 10 Dec 29, 2022
Insert a Spotify Playlist, Get a list of YouTube URLs from it.

spotbee This is a module that spits out YouTube URLs from Spotify Playlist URLs Why use this? It is asynchronous which makes it compatible to use with

Nishant Sapkota 10 Apr 06, 2022
📙 Super lightweight function registries for your library

catalogue: Super lightweight function registries for your library catalogue is a tiny, zero-dependencies library that makes it easy to add function (o

Explosion 139 Jan 02, 2023
Turn crypto miner on/off depending on powerwall charge level

Mining Crypto with Tesla Solar and Powerwalls This script turns a crypto miner on and off when the Tesla Powerwall level drops/rises above a certain t

Matt 1 Nov 09, 2021
Quanser Labs Robotic Arm With Python

Quanser-Labs-Robotic-Arm As a team, we programmed a Robotic-Arm in Python on the

1 Jul 11, 2022
scap is a tool for putting code in places and for other purposes

Scap is the deployment script used by Wikimedia Foundation to publish code and configuration on production web servers.

Wikimedia 7 Nov 02, 2022
Astroquery is an astropy affiliated package that contains a collection of tools to access online Astronomical data.

Astroquery is an astropy affiliated package that contains a collection of tools to access online Astronomical data.

The Astropy Project 631 Jan 05, 2023
Aplicação que envia regularmente um email ao utilizador com todos os filmes disponíveis no cartaz dos cinemas Nos.

Cartaz-Cinemas-Nos Aplicação que envia regularmente uma notificação ao utilizador com todos os filmes disponíveis no cartaz dos cinemas Nos. Só funcio

Cavalex 1 Jan 09, 2022
🤡 Multiple Discord selfbot src deobfuscated !

Deobfuscated selfbot sources About. If you whant to add src, please make pull requests. If you whant to deobfuscate src, send mail to

Sreecharan 5 Sep 13, 2021
qecsim is a Python 3 package for simulating quantum error correction using stabilizer codes.

qecsim qecsim is a Python 3 package for simulating quantum error correction using stabilizer codes.

44 Dec 20, 2022
Blender 2.80+ Timelapse Capture Tool Addon

SimpleTimelapser Blender 2.80+ Timelapse Capture Tool Addon Developed for Blender 3.0.0, tested working on 2.80.0 It's no ZBrush undo history but it's

4 Jan 19, 2022
My solutions for Advent of Code 2021 🌟🎄

🌟 Advent of Code 2021 🎄 My solutions for Advent of Code 2021. About · What is Advent of Code? · Contents · Usage · Table of puzzles (TODO: add final

Amanda P. Pinha 2 Dec 05, 2022
Declarative and extensible library for configuration & code separation

ClassyConf ClassyConf is the configuration architecture solution for perfectionists with deadlines. It provides a declarative way to define settings f

83 Dec 07, 2022
Lagrange Interpolation Method-Python

Lagrange Interpolation Method-Python The Lagrange interpolation formula is a way to find a polynomial, called Lagrange polynomial, that takes on certa

Motahare Soltani 2 Jul 05, 2022
Trusted sessions for falcon using itsdangerous.

Falcon signed sessions This project allows you to easily add trusted cookies to falcon, it works by storing a signed cookie in the client's browser us

Ward 1 Feb 08, 2022