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
Data on COVID-19 (coronavirus) cases, deaths, hospitalizations, tests • All countries • Updated daily by Our World in Data

COVID-19 Dataset by Our World in Data Find our data on COVID-19 and its documentation in public/data. Documentation Data: complete COVID-19 dataset Da

Our World in Data 5.5k Jan 03, 2023
Using graph_nets for pion classification and energy regression. Contributions from LLNL and LBNL

nbdev template Use this template to more easily create your nbdev project. If you are using an older version of this template, and want to upgrade to

3 Nov 23, 2022
A python library for writing parser-based interactive fiction.

About IntFicPy A python library for writing parser-based interactive fiction. Currently in early development. IntFicPy Docs Parser-based interactive f

Rita Lester 31 Nov 23, 2022
Sudo type me a payload

payloadSecretary Sudo type me a payload Have you ever found yourself having to perform a test, and a client has provided you with a VM inside a VDI in

7 Jul 21, 2022
Design-by-contract in Python3 with informative violation messages and inheritance

icontract icontract provides design-by-contract to Python3 with informative violation messages and inheritance. It also gives a base for a flourishing

275 Jan 02, 2023
Repo created for the purpose of adding any kind of programs and projects

Programs and Project Repository A repository for adding programs and projects of any kind starting from beginners level to expert ones Contributing to

Unicorn Dev Community 3 Nov 02, 2022
Batch obfuscator based on the obfuscation method used by the trick bot launcher

Batch obfuscator based on the obfuscation method used by the trick bot launcher

SlizBinksman 2 Mar 19, 2022
JARVIS PC Assistant is an assisting program to make your computer easier to use

JARVIS-PC-Assistant JARVIS PC Assistant is an assisting program to make your computer easier to use Welcome to the J.A.R.V.I.S. PC Assistant help file

Dasun Nethsara 2 Dec 02, 2022
Digdata presented 'BrandX' as a clothing brand that wants to know the best places to set up a 'pop up' store.

Digdata presented 'BrandX' as a clothing brand that wants to know the best places to set up a 'pop up' store. I used the dataset given to write a program that ranks these places.

Mahmoud 1 Dec 11, 2021
Binjago - Set of tools aiding in analysis of stripped Golang binaries with Binary Ninja

Binjago 🥷 Set of tools aiding in analysis of stripped Golang binaries with Bina

W3ndige 2 Jul 23, 2022
Vaccine for STOP/DJVU ransomware, prevents encryption

STOP/DJVU Ransomware Vaccine Prevents STOP/DJVU Ransomware from encrypting your files. This tool does not prevent the infection itself. STOP ransomwar

Karsten Hahn 16 May 31, 2022
This module is for finding the execution time of a whole python program

exetime 3.8 This module is for finding the execution time of a whole program How to install $ pip install exetime Contents: General Information Instru

Saikat Das 4 Oct 18, 2021
Doom o’clock is a website/project that features a countdown of “when will the earth end” and a greenhouse gas effect emission prediction that’s predicted

Doom o’clock is a website/project that features a countdown of “when will the earth end” and a greenhouse gas effect emission prediction that’s predicted

shironeko(Hazel) 4 Jan 01, 2022
Synchrosqueezing, wavelet transforms, and time-frequency analysis in Python

Synchrosqueezing is a powerful reassignment method that focuses time-frequency representations, and allows extraction of instantaneous amplitudes and frequencies

John Muradeli 382 Jan 06, 2023
an elegant datasets factory

rawbuilder an elegant datasets factory Free software: MIT license Documentation: https://rawbuilder.readthedocs.io. Features Schema oriented datasets

Mina Farag 7 Nov 12, 2022
A python based app to improve your presentation workflow

Presentation Remote A remote made for making presentations easier by enabling all the members to have access to change the slide and control the flow

Parnav 1 Oct 28, 2021
Convert a .vcf file to 'aa_table.tsv', including depth & alt frequency info

Produce an 'amino acid table' file from a vcf, including depth and alt frequency info.

Dan Fornika 1 Oct 16, 2021
My solution for a MARL problem on a Grid Environment with Q-tables.

To run the project, run: conda create --name env python=3.7 pip install -r requirements.txt python run.py To-do: Add direction to the state space Take

Merve Noyan 12 Dec 25, 2021
Fisherman is a free open source fishing bot written in python.

Fisherman is a free open source fishing bot written in python.

Pure | Cody 33 Jan 29, 2022
A Python feed reader library.

reader is a Python feed reader library. It aims to allow writing feed reader applications without any business code, and without enforcing a dependenc

266 Dec 30, 2022