• Stars
    star
    544
  • Rank 81,699 (Top 2 %)
  • Language
    Kotlin
  • License
    MIT License
  • Created about 4 years ago
  • Updated 11 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Popular Open Source icon packs for Compose Multiplatform

compose-icons

Compose Multiplatform icons is a pack of libraries that provide well known Icon Packs. The library usage is inspired by Compose Material Icons.

Compose Support

  • Android
  • Desktop
  • iOS
  • MacOS Native
  • Web (JSCanvas)

Adding to your project

Add the project repository:

repositories {
    mavenCentral()
}
implementation("br.com.devsrsouza.compose.icons:{ICON_PACK}:1.1.0")

** {ICON_PACK} is a placeholder, you should replace it with your icon pack of choose.

example: br.com.devsrsouza.compose.icons:font-awesome:1.1.0

Example

Icon(
    imageVector = FontAwesomeIcons.Brands.Github,
)

You can find all code reference in the docs of the icon packs bellow.

Icon Packs

Icon pack Icon Version Dependency All Icons Docs
Simple-Icons 4.14.0 simple-icons docs
Feather 4.28.0 feather docs
Tabler Icons 1.39.1 tabler-icons docs
Eva Icons 1.1.3 eva-icons docs
Font Awesome 5.15.2 font-awesome docs
Octicons 12.1.0 octicons docs
Linea 1.0 linea docs
Line Awesome 1.3.0 (a60f113) line-awesome docs
Weather Icons by Erik Flowers 2.0.12 erikflowers-weather-icons docs
css.gg 2.0.0 css-gg docs

Version Catalog

[versions]
composeIcons = "1.1.0"

[libraries]
composeIcons-cssGg = { module = "br.com.devsrsouza.compose.icons:css-gg", version.ref = "composeIcons" }
composeIcons-weatherIcons = { module = "br.com.devsrsouza.compose.icons:erikflowers-weather-icons", version.ref = "composeIcons" }
composeIcons-evaIcons = { module = "br.com.devsrsouza.compose.icons:eva-icons", version.ref = "composeIcons" }
composeIcons-feather = { module = "br.com.devsrsouza.compose.icons:feather", version.ref = "composeIcons" }
composeIcons-fontAwesome = { module = "br.com.devsrsouza.compose.icons:font-awesome", version.ref = "composeIcons" }
composeIcons-lineAwesome = { module = "br.com.devsrsouza.compose.icons:line-awesome", version.ref = "composeIcons" }
composeIcons-linea = { module = "br.com.devsrsouza.compose.icons:linea", version.ref = "composeIcons" }
composeIcons-octicons = { module = "br.com.devsrsouza.compose.icons:octicons", version.ref = "composeIcons" }
composeIcons-simpleIcons = { module = "br.com.devsrsouza.compose.icons:simple-icons", version.ref = "composeIcons" }
composeIcons-tablerIcons = { module = "br.com.devsrsouza.compose.icons:tabler-icons", version.ref = "composeIcons" }

Roadmap

  • Add more icon packs
  • Migrate code generator to Gradle
  • Remove icons source from repository and check the abi when generate.
  • Improve sample app
  • Documentation to how add icon packs

How the project works

The project uses Kotlin Scripting (main.kts) to download and generate the icons into Compose source code, to generate the source code it uses the tooling library svg-to-compose.

Contribution

If you know a icon pack that the project could support, please, submit an issue :D

License

The icon packs have their own license that you can find at the All Icons Docs

Project license:

MIT License

Copyright (c) 2021 DevSrSouza

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Development

Update API Dump: ./gradlew desktopApiDump Checking API Dump: ./gradlew desktopApiCheck

More Repositories

1

svg-to-compose

Converts SVG and Android Vector Drawable in Compose Multiplatform source code
Kotlin
405
star
2

KotlinBukkitAPI

KotlinBukkitAPI is an API for Bukkit/SpigotAPI using the cool and nifty features Kotlin has to make your life more easier.
Kotlin
154
star
3

Bukkript

Bukkript is a custom Kotlin Scripting Definition for customizing Minecraft Bukkit servers
Kotlin
74
star
4

EventKt

EventKt is a simple and lightweight kotlin multiplatform event bus library
Kotlin
53
star
5

kmp-swift-reveal

Gradle plugin that reveal the Swift code that you should expect from a Kotlin iOS module.
Kotlin
49
star
6

dropbox-focus-intellij-plugin

IntelliJ/Android Studio plugin that integrates Dropbox Focus gradle plugin directly in the IDE.
Kotlin
31
star
7

kt-mc-packet

A Minecraft Protocol library for Kotlin Multiplatform
Kotlin
30
star
8

Redissed

Redis Kotlin wrapper inspired on Exposed
Kotlin
28
star
9

KotlinBukkitAPI-Tooling

The KotlinBukkitAPI Tooling is a IntelliJ plugin that helps developers using KotlinBukkitAPI and scripts for Bukkript.
Kotlin
15
star
10

KotlinNBT

Named Binary Tag (NBT) library for Kotlin Multiplataform
Kotlin
11
star
11

kotlinx.serialization.uri

Kotlinx serialization URI parser Multiplatform
Kotlin
10
star
12

Marknote

A simple markdown note app built with flutter
Dart
10
star
13

chuck-norris-creates-android

Android app using api.chucknorris.io
Kotlin
5
star
14

jda-kotlin-command

A small Kotlin library to create Guild commands for Discord using JDA and Kotlin Coroutines.
Kotlin
5
star
15

MCHeads

An open source Minecraft Custom Heads Database REST API
Kotlin
5
star
16

docker-kotlin-multiplatform

Kotlin
4
star
17

KtorScriptRoute

Script route using Kotlinx.html for Ktor
Kotlin
4
star
18

Marknote-Compose

A simple note app built with Jetpack Compose
Kotlin
4
star
19

MCHeads-app

An android app client for MCHeads using Kotlin and Android Jetpack.
Kotlin
3
star
20

kmp-swift-interop-expect-declaration

Demo project testing a Expect/Actual with Swift implementation
Kotlin
3
star
21

coroutines-alarm-delay

Delay your task in android with alarmDelay that truly runs (using AlarmManager)
Kotlin
3
star
22

kotlinx.serialization-sql

SQL queries generator using Kotlinx.serialization
Kotlin
2
star
23

Config4Bukkit

Typesafe Config for Bukkit FileConfiguration
Java
2
star
24

Json4Bukkit

Json FileConfiguration support (Bukkit).
Java
2
star
25

SouzaEconomy

Bukkit multiple Economy plugin
Kotlin
1
star
26

SimpleFTPServer

Simple ftp server using MinimalFTP
Java
1
star
27

workflow-metrics

A Kotlin application that runs for a period of time collecting system information for a Github Workflow
Kotlin
1
star
28

compose-tree-test

Testing Jetpack Compose runtime in a simple node tree
Kotlin
1
star
29

pokedex-compose-multiplatform

[WIP] Pokedex app experiment using Compose Multiplatform
Kotlin
1
star