A simple sprite format for building 1bit styled graphics.

Overview

Mini Sprite

style: very good analysis License: MIT

Mini sprite is a simple, matrix based format for creating 1bit styled graphics.

Project structure

Mini Sprite is composed of several projects:

Mini Sprite

The core package contains the engine/platform agnostic code to handle the format for the sprites and maps.

Mini Sprite Editor

The flutter application, deployed at https://minisprit.es, which can be used to design sprites and maps using the Mini Sprite format.

Flame Mini Sprite

Provides bridge methods to make it easier to use Mini Sprite inside the flame game engine.

Mini Treasure Quest

An example game made with Flame and Mini Sprite.

Get help

Check each link provided above to read the documentation for each package.

Join Bluefire's discord server to ask questions to the team and the community.

Roadmap

This is the planned roadmap for the tool.

Keep in mind that this is not "written in stone" so it can be changed as new ideas and feedback comes into play.

Also, this roadmap does not consider bugfixes of any sort, as this is implicitly in the planning, bug should be fixed as they are discovered (considering their tradeoff between impact and complexity)

Priorities

  • Tool stabilization and increase of code coverage: Mini Sprite had a rough couple of weeks before its release, some features was rushed in order to get done in time for the Midyear Flame Game Jam so some tests were omitted and some features could be re-organized. This is an important first step before we start to grown the tool.
  • Improve Map editor perfomance. One of the feedbacks received during the Game Jam, the map editor crashes the app if you try to create a big map (50x20 tiles).
  • Improve shortcuts support. Mini Sprite Editor already have some shortcuts, but they are very unstable, sometimes they work, sometimes they don't, this helps usability a lot and we should find a good solution for it before the editor growns more in features.
  • Create proper infrastructure for the HUB. Having the hub accessible to everybody is an important step towards the goal of making Mini Sprite a community powered tool.
  • Add support to animations.
Comments
  • fix: importing map from clipboard not working after changing map size

    fix: importing map from clipboard not working after changing map size

    Description Importing the sprites library from clipboard and afterwards importing a map with a size of 16x16 it doesn't adjust the map size. Therefore I adjusted the map size and tried again. Message is telling me everything got imported, but nothing is shown. To solve this I have to reload the page, import my sprite library again, set the size of the map to 16x16 and then import my map.

    Map Library String for testing:

    barrel|16,16;20,0;10,1;5,0;1,1;10,0;1,1;4,0;12,1;5,0;10,1;6,0;1,1;1,0;6,1;1,0;1,1;6,0;1,1;8,0;1,1;5,0;3,1;6,0;3,1;4,0;12,1;5,0;1,1;1,0;6,1;1,0;1,1;6,0;1,1;2,0;4,1;2,0;1,1;6,0;2,1;6,0;2,1;6,0;10,1;6,0;1,1;1,0;6,1;1,0;1,1;5,0;2,1;8,0;2,1;4,0;12,1;1,0
    platform|16,16;1,0;14,1;1,0;2,1;12,0;3,1;3,0;8,1;3,0;2,1;1,0;12,1;1,0;2,1;1,0;2,1;2,0;4,1;2,0;2,1;1,0;2,1;1,0;2,1;2,0;4,1;2,0;2,1;1,0;2,1;1,0;12,1;1,0;2,1;1,0;12,1;1,0;2,1;1,0;12,1;1,0;2,1;1,0;12,1;1,0;2,1;1,0;2,1;2,0;4,1;2,0;2,1;1,0;2,1;1,0;2,1;2,0;4,1;2,0;2,1;1,0;2,1;1,0;12,1;1,0;2,1;3,0;8,1;3,0;3,1;12,0;2,1;1,0;14,1;1,0
    player|16,16;20,0;7,1;8,0;9,1;6,0;2,1;6,0;3,1;5,0;1,1;1,0;6,1;1,0;2,1;5,0;1,1;2,0;2,1;1,0;3,1;1,0;1,1;5,0;1,1;1,0;7,1;1,0;1,1;5,0;1,1;1,0;6,1;1,0;2,1;6,0;1,1;6,0;2,1;9,0;4,1;3,0;1,1;7,0;1,1;2,0;3,1;1,0;3,1;6,0;6,1;1,0;3,1;6,0;6,1;1,0;3,1;6,0;7,1;1,0;1,1;7,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;6,0
    door|16,16;2,0;12,1;4,0;1,1;10,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;10,0;1,1;4,0;12,1;4,0;8,1;3,0;1,1;4,0;10,1;1,0;1,1;4,0;12,1;4,0;12,1;4,0;12,1;4,0;12,1;4,0;12,1;2,0
    door_back|16,16;2,0;12,1;4,0;1,1;10,0;1,1;4,0;1,1;1,0;8,1;1,0;1,1;4,0;1,1;1,0;8,1;1,0;1,1;4,0;1,1;1,0;8,1;1,0;1,1;4,0;1,1;1,0;8,1;1,0;1,1;4,0;1,1;1,0;8,1;1,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;1,0;3,1;6,0;1,1;4,0;1,1;1,0;1,1;8,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;10,0;1,1;4,0;1,1;10,0;1,1;4,0;12,1;2,0
    oxygen_bubble|16,16;21,0;6,1;8,0;2,1;6,0;2,1;5,0;1,1;10,0;1,1;3,0;1,1;2,0;2,1;8,0;1,1;2,0;1,1;1,0;2,1;9,0;1,1;1,0;1,1;2,0;1,1;11,0;2,1;2,0;1,1;11,0;2,1;14,0;2,1;14,0;2,1;14,0;1,1;1,0;1,1;12,0;1,1;2,0;1,1;12,0;1,1;3,0;1,1;10,0;1,1;5,0;2,1;6,0;2,1;8,0;6,1;5,0
    spike_ball|16,16;34,0;1,1;4,0;2,1;4,0;1,1;5,0;1,1;2,0;4,1;2,0;1,1;7,0;8,1;8,0;2,1;1,0;2,1;1,0;2,1;7,0;3,1;1,0;2,1;1,0;3,1;5,0;12,1;4,0;3,1;1,0;1,1;1,0;1,1;1,0;4,1;5,0;3,1;1,0;1,1;1,0;4,1;7,0;8,1;8,0;8,1;7,0;1,1;2,0;4,1;2,0;1,1;5,0;1,1;4,0;2,1;4,0;1,1;34,0
    wall_corner_top_left|16,16;17,1;15,0;1,1;1,0;15,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0
    wall_corner_top_right|16,16;16,1;15,0;15,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1
    wall_corner_bottom_right|16,16;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;15,1;1,0;1,1;15,0;17,1
    wall_corner_bottom_left|16,16;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;15,1;15,0;16,1
    wall_left|16,16;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0
    wall_right|16,16;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1;13,0;1,1;1,0;1,1
    wall_top|16,16;16,1;16,0;16,1;208,0
    wall_bottom|16,16;208,0;16,1;16,0;16,1
    spaceship_wrench|16,16;18,1;12,0;3,1;3,0;3,1;8,0;2,1;4,0;2,1;8,0;2,1;1,0;1,1;2,0;2,1;8,0;2,1;1,0;5,1;8,0;2,1;1,0;6,1;7,0;2,1;5,0;3,1;6,0;2,1;6,0;3,1;5,0;2,1;7,0;6,1;1,0;2,1;8,0;5,1;1,0;2,1;8,0;2,1;2,0;1,1;1,0;2,1;8,0;2,1;4,0;2,1;8,0;3,1;3,0;3,1;12,0;18,1
    spaceship_tank|16,16;18,1;12,0;3,1;14,0;2,1;2,0;6,1;1,0;4,1;1,0;2,1;2,0;1,1;4,0;1,1;1,0;1,1;2,0;1,1;1,0;2,1;2,0;1,1;4,0;1,1;1,0;2,1;1,0;1,1;1,0;2,1;2,0;1,1;4,0;1,1;1,0;1,1;2,0;1,1;1,0;2,1;2,0;6,1;4,0;1,1;1,0;2,1;2,0;1,1;4,0;1,1;4,0;1,1;1,0;2,1;2,0;6,1;4,0;1,1;1,0;2,1;2,0;6,1;4,0;1,1;1,0;2,1;2,0;11,1;1,0;2,1;2,0;6,1;6,0;2,1;14,0;3,1;12,0;18,1
    spaceship_computer|16,16;18,1;12,0;3,1;2,0;10,1;2,0;2,1;2,0;1,1;8,0;1,1;2,0;2,1;2,0;1,1;8,0;1,1;2,0;2,1;2,0;1,1;8,0;1,1;2,0;2,1;2,0;1,1;8,0;1,1;2,0;2,1;2,0;1,1;8,0;1,1;2,0;2,1;2,0;10,1;2,0;2,1;3,0;8,1;3,0;2,1;5,0;4,1;5,0;2,1;6,0;2,1;6,0;2,1;3,0;8,1;3,0;2,1;2,0;10,1;2,0;3,1;12,0;18,1
    

    Map String for testing:

    [{"x":7,"y":14,"data":{"sprite":"barrel"}},{"x":8,"y":14,"data":{"sprite":"barrel"}},{"x":6,"y":14,"data":{"sprite":"barrel"}},{"x":1,"y":9,"data":{"sprite":"barrel"}},{"x":1,"y":8,"data":{"sprite":"barrel"}},{"x":7,"y":1,"data":{"sprite":"barrel"}},{"x":8,"y":1,"data":{"sprite":"barrel"}},{"x":9,"y":1,"data":{"sprite":"barrel"}},{"x":14,"y":7,"data":{"sprite":"barrel"}},{"x":14,"y":8,"data":{"sprite":"barrel"}},{"x":14,"y":9,"data":{"sprite":"barrel"}},{"x":13,"y":7,"data":{"sprite":"barrel"}},{"x":8,"y":7,"data":{"sprite":"barrel"}},{"x":7,"y":8,"data":{"sprite":"barrel"}},{"x":9,"y":8,"data":{"sprite":"barrel"}},{"x":15,"y":0,"data":{"sprite":"wall_corner_top_right"}},{"x":14,"y":0,"data":{"sprite":"wall_top"}},{"x":13,"y":0,"data":{"sprite":"wall_top"}},{"x":12,"y":0,"data":{"sprite":"wall_top"}},{"x":11,"y":0,"data":{"sprite":"wall_top"}},{"x":10,"y":0,"data":{"sprite":"wall_top"}},{"x":9,"y":0,"data":{"sprite":"wall_top"}},{"x":8,"y":0,"data":{"sprite":"wall_top"}},{"x":7,"y":0,"data":{"sprite":"wall_top"}},{"x":6,"y":0,"data":{"sprite":"wall_top"}},{"x":5,"y":0,"data":{"sprite":"wall_top"}},{"x":3,"y":0,"data":{"sprite":"wall_top"}},{"x":1,"y":0,"data":{"sprite":"wall_top"}},{"x":4,"y":0,"data":{"sprite":"wall_top"}},{"x":2,"y":0,"data":{"sprite":"wall_top"}},{"x":0,"y":0,"data":{"sprite":"wall_corner_top_left"}},{"x":0,"y":1,"data":{"sprite":"wall_left"}},{"x":0,"y":2,"data":{"sprite":"wall_left"}},{"x":0,"y":3,"data":{"sprite":"wall_left"}},{"x":0,"y":4,"data":{"sprite":"wall_left"}},{"x":0,"y":5,"data":{"sprite":"wall_left"}},{"x":0,"y":6,"data":{"sprite":"wall_left"}},{"x":0,"y":7,"data":{"sprite":"wall_left"}},{"x":0,"y":8,"data":{"sprite":"wall_left"}},{"x":0,"y":9,"data":{"sprite":"wall_left"}},{"x":0,"y":10,"data":{"sprite":"wall_left"}},{"x":0,"y":11,"data":{"sprite":"wall_left"}},{"x":0,"y":13,"data":{"sprite":"wall_left"}},{"x":0,"y":12,"data":{"sprite":"wall_left"}},{"x":0,"y":14,"data":{"sprite":"wall_left"}},{"x":2,"y":15,"data":{"sprite":"wall_bottom"}},{"x":0,"y":15,"data":{"sprite":"wall_corner_bottom_left"}},{"x":1,"y":15,"data":{"sprite":"wall_bottom"}},{"x":3,"y":15,"data":{"sprite":"wall_bottom"}},{"x":4,"y":15,"data":{"sprite":"wall_bottom"}},{"x":5,"y":15,"data":{"sprite":"wall_bottom"}},{"x":6,"y":15,"data":{"sprite":"wall_bottom"}},{"x":7,"y":15,"data":{"sprite":"wall_bottom"}},{"x":8,"y":15,"data":{"sprite":"wall_bottom"}},{"x":11,"y":15,"data":{"sprite":"wall_bottom"}},{"x":10,"y":15,"data":{"sprite":"wall_bottom"}},{"x":9,"y":15,"data":{"sprite":"wall_bottom"}},{"x":12,"y":15,"data":{"sprite":"wall_bottom"}},{"x":13,"y":15,"data":{"sprite":"wall_bottom"}},{"x":14,"y":15,"data":{"sprite":"wall_bottom"}},{"x":15,"y":15,"data":{"sprite":"wall_corner_bottom_right"}},{"x":15,"y":14,"data":{"sprite":"wall_right"}},{"x":15,"y":13,"data":{"sprite":"wall_right"}},{"x":15,"y":12,"data":{"sprite":"wall_right"}},{"x":15,"y":11,"data":{"sprite":"wall_right"}},{"x":15,"y":10,"data":{"sprite":"wall_right"}},{"x":15,"y":9,"data":{"sprite":"wall_right"}},{"x":15,"y":8,"data":{"sprite":"wall_right"}},{"x":15,"y":7,"data":{"sprite":"wall_right"}},{"x":15,"y":6,"data":{"sprite":"wall_right"}},{"x":15,"y":5,"data":{"sprite":"wall_right"}},{"x":15,"y":4,"data":{"sprite":"wall_right"}},{"x":15,"y":2,"data":{"sprite":"wall_right"}},{"x":15,"y":1,"data":{"sprite":"wall_right"}},{"x":15,"y":3,"data":{"sprite":"wall_right"}},{"x":2,"y":13,"data":{"sprite":"platform"}},{"x":3,"y":13,"data":{"sprite":"platform"}},{"x":4,"y":13,"data":{"sprite":"platform"}},{"x":5,"y":13,"data":{"sprite":"platform"}},{"x":6,"y":12,"data":{"sprite":"platform"}},{"x":7,"y":10,"data":{"sprite":"platform"}},{"x":8,"y":11,"data":{"sprite":"platform"}},{"x":9,"y":11,"data":{"sprite":"platform"}},{"x":9,"y":13,"data":{"sprite":"platform"}},{"x":10,"y":13,"data":{"sprite":"platform"}},{"x":12,"y":13,"data":{"sprite":"platform"}},{"x":13,"y":14,"data":{"sprite":"platform"}},{"x":11,"y":11,"data":{"sprite":"platform"}},{"x":10,"y":11,"data":{"sprite":"platform"}},{"x":6,"y":10,"data":{"sprite":"platform"}},{"x":5,"y":10,"data":{"sprite":"platform"}},{"x":3,"y":3,"data":{"sprite":"oxygen_bubble"}},{"x":3,"y":9,"data":{"sprite":"oxygen_bubble"}},{"x":14,"y":11,"data":{"sprite":"oxygen_bubble"}},{"x":10,"y":3,"data":{"sprite":"oxygen_bubble"}},{"x":9,"y":14,"data":{"sprite":"oxygen_bubble"}},{"x":7,"y":5,"data":{"sprite":"spike_ball"}},{"x":12,"y":14,"data":{"sprite":"platform"}},{"x":13,"y":13,"data":{"sprite":"door"}},{"x":2,"y":12,"data":{"sprite":"spaceship_wrench"}},{"x":1,"y":2,"data":{"sprite":"player"}},{"x":1,"y":3,"data":{"sprite":"platform"}},{"x":2,"y":3,"data":{"sprite":"platform"}}]
    

    Steps To Reproduce

    1. Sprite tab: Import sprites library from clipboard
    2. Map tab: Import map from clipboard
    3. Change map size to 16x16
    4. Reimport map from clipboard
    5. Success message is shown, but nothing is imported

    Expected Behavior Two possibilities:

    1. Adjust the map to the size which was used to create the map
    2. Clearing the map, adjusting the size manually and then be able to paste the map in without refreshing and reimporting everything.

    Screenshots Imported map from clipboard: image

    Adjusting the size: image

    Reimporting map from clipboard: image

    bug 
    opened by novas1r1 3
  • feat: Getters for map width and height

    feat: Getters for map width and height

    Description

    Right now there is no easy way to get the width and height of mini map from string data. This information is useful for clamping object within the world bounds.

    Requirements

    • [ ] Checklist of requirements to be fulfilled

    Designs

    Additional Context

    Add any other context or screenshots about the feature request go here.

    opened by ufrshubham 1
  • feat: adding mini sprite component

    feat: adding mini sprite component

    Description

    Adds mini sprite component to flame_mini_sprite.

    Type of Change

    • [x] โœจ New feature (non-breaking change which adds functionality)
    • [ ] ๐Ÿ› ๏ธ Bug fix (non-breaking change which fixes an issue)
    • [ ] โŒ Breaking change (fix or feature that would cause existing functionality to change)
    • [ ] ๐Ÿงน Code refactor
    • [ ] โœ… Build configuration change
    • [ ] ๐Ÿ“ Documentation
    • [ ] ๐Ÿ—‘๏ธ Chore
    opened by erickzanardo 0
  • feat: adding flutter mini sprite

    feat: adding flutter mini sprite

    Description

    Adding the flutter mini sprite package.

    Type of Change

    • [x] โœจ New feature (non-breaking change which adds functionality)
    • [ ] ๐Ÿ› ๏ธ Bug fix (non-breaking change which fixes an issue)
    • [ ] โŒ Breaking change (fix or feature that would cause existing functionality to change)
    • [ ] ๐Ÿงน Code refactor
    • [ ] โœ… Build configuration change
    • [ ] ๐Ÿ“ Documentation
    • [ ] ๐Ÿ—‘๏ธ Chore
    opened by erickzanardo 0
  • feat!: preparing for multi color sprites.

    feat!: preparing for multi color sprites.

    Description

    A first step in order to enable sprites with multi colors. The format has been updated to one that will make it possible for the sprite to have any number of colors.

    For now, the editor only support two though, that will be change on a PR of its own to minimize changes on a already huge PR.

    Type of Change

    • [x] โœจ New feature (non-breaking change which adds functionality)
    • [ ] ๐Ÿ› ๏ธ Bug fix (non-breaking change which fixes an issue)
    • [ ] โŒ Breaking change (fix or feature that would cause existing functionality to change)
    • [ ] ๐Ÿงน Code refactor
    • [ ] โœ… Build configuration change
    • [ ] ๐Ÿ“ Documentation
    • [ ] ๐Ÿ—‘๏ธ Chore
    opened by erickzanardo 0
  • chore: creating Roadmap

    chore: creating Roadmap

    Description

    Adds an initial roadmap for the tool.

    Type of Change

    • [ ] โœจ New feature (non-breaking change which adds functionality)
    • [ ] ๐Ÿ› ๏ธ Bug fix (non-breaking change which fixes an issue)
    • [ ] โŒ Breaking change (fix or feature that would cause existing functionality to change)
    • [ ] ๐Ÿงน Code refactor
    • [ ] โœ… Build configuration change
    • [ ] ๐Ÿ“ Documentation
    • [x] ๐Ÿ—‘๏ธ Chore
    opened by erickzanardo 0
  • fix: Choose correct text for sprite remove key

    fix: Choose correct text for sprite remove key

    Description

    Just fixes the text that said rename before, but should say remove.

    Type of Change

    • [x] ๐Ÿ› ๏ธ Bug fix (non-breaking change which fixes an issue)
    opened by spydon 0
  • chore(release): publish packages

    chore(release): publish packages

    Description

    Type of Change

    • [ ] โœจ New feature (non-breaking change which adds functionality)
    • [ ] ๐Ÿ› ๏ธ Bug fix (non-breaking change which fixes an issue)
    • [ ] โŒ Breaking change (fix or feature that would cause existing functionality to change)
    • [ ] ๐Ÿงน Code refactor
    • [ ] โœ… Build configuration change
    • [ ] ๐Ÿ“ Documentation
    • [ ] ๐Ÿ—‘๏ธ Chore
    opened by erickzanardo 0
  • fix: gracefully handling new sprite name conflicts

    fix: gracefully handling new sprite name conflicts

    Description

    Fixes the name conflict on the new sprite feature.

    Type of Change

    • [ ] โœจ New feature (non-breaking change which adds functionality)
    • [x] ๐Ÿ› ๏ธ Bug fix (non-breaking change which fixes an issue)
    • [ ] โŒ Breaking change (fix or feature that would cause existing functionality to change)
    • [ ] ๐Ÿงน Code refactor
    • [ ] โœ… Build configuration change
    • [ ] ๐Ÿ“ Documentation
    • [ ] ๐Ÿ—‘๏ธ Chore
    opened by erickzanardo 0
  • feat: adding width and height to MiniMap

    feat: adding width and height to MiniMap

    Description

    Adds width and height to MiniMap

    Fixes #30

    Type of Change

    • [x] โœจ New feature (non-breaking change which adds functionality)
    • [ ] ๐Ÿ› ๏ธ Bug fix (non-breaking change which fixes an issue)
    • [ ] โŒ Breaking change (fix or feature that would cause existing functionality to change)
    • [ ] ๐Ÿงน Code refactor
    • [ ] โœ… Build configuration change
    • [ ] ๐Ÿ“ Documentation
    • [ ] ๐Ÿ—‘๏ธ Chore
    opened by erickzanardo 0
  • chore: increasing mini sprite core tests

    chore: increasing mini sprite core tests

    Description

    Adds missing tests for mini sprite core project.

    Type of Change

    • [ ] โœจ New feature (non-breaking change which adds functionality)
    • [ ] ๐Ÿ› ๏ธ Bug fix (non-breaking change which fixes an issue)
    • [ ] โŒ Breaking change (fix or feature that would cause existing functionality to change)
    • [x] ๐Ÿงน Code refactor
    • [ ] โœ… Build configuration change
    • [ ] ๐Ÿ“ Documentation
    • [ ] ๐Ÿ—‘๏ธ Chore
    opened by erickzanardo 0
Owner
Blue Fire
Team working on open source packages and plugins for Flutter, including Flame, Audioplayers, Photo View, and more.
Blue Fire
Sprite viewer / editor for the Game Boy Dev Kit

This is a graphic editor for GBDK inspired by GameBoyTileDesigner (GBTD) and GameBoyMapBuilder (GBMB). Online version game_boy_graphics_editor can run

DREVET Olivier 13 Dec 17, 2022
A tiny webgl 2d sprite renderer for Dart, inspired by js13k-2d

twod.dart A tiny webgl 2d sprite renderer for Dart, inspired by js13k-2d. This library provides two libraries: twod.dart, a minimal 2D sprite renderin

Matan Lurey 2 Aug 23, 2022
Flutter package for displaying and animating Scalable Vector Graphics 1.1 files. The package has been written solely in Dart Language.

Animated SVG | Flutter Package Flutter package for displaying and animating Scalable Vector Graphics 1.1 files. The package has been written solely in

Bulent Baris Kilic 5 Jul 19, 2022
A collection of pixel-perfect iOS-styled components and properties for Flutter, following the official guidelines.

cupertinew โš ๏ธ Experimental and work in progress โš ๏ธ A collection of pixel-perfect iOS-styled components and properties for Flutter, following the offic

Jeroen Meijer (Jay) 30 Nov 10, 2022
A simple dart package to convert large numbers to a human readable format. 1278 to 1.2K instead, for example.

A simple dart package to convert large numbers to a human readable format. 1278 to 1.2K instead, for example. Features Represents large numbers in ter

Rohit V 1 Oct 8, 2022
A simple and customizable flutter package for inputting phone number in intl / international format uses Google's libphonenumber

Intl Phone Number Input A simple and customizable flutter package for inputting phone number in intl / international format uses Google's libphonenumb

Ogunye Nathaniel Oluwatobiloba 138 Dec 11, 2022
null 1 Jan 29, 2022
The Flutter app demonstrates displaying data in a weekly format.

Flutter weekly chart The Flutter app demonstrates displaying data in a weekly format. I came across this kind of screen in the app that I have been wo

BenBoonya 27 Jan 2, 2023
Flutter Currency Format Converter Library

Save your time on a little logic converting a currency from integer to string or string to integer. if you intrested to contribute to our little proje

Fathan Akram 1 Dec 7, 2021
MoneyTextFormField is one of the flutter widget packages that can be used to input values in the form of currencies, by displaying the output format in realtime.

MoneyTextFormField MoneyTextFormField is one of the flutter widget packages that can be used to input values in the form of currencies, by displaying

Fadhly Permata 11 Jan 1, 2023
A Flutter App To Download Videos From YouTube In Mp3 Format

Flutter_YouTube_MP3 App A Simple app To Download mp3 Videos From YouTube โค๏ธ Found this project useful? If you found this project useful, then please c

Sheraz Mahar 24 Dec 19, 2022
Rich text editor for Flutter based on Delta format (Quill fork)

Visual Editor Visual Editor is a Rich Text editor for Flutter originally forked from Flutter Quill. The editor is built around the powerful Delta docu

Visual Space 190 Jan 7, 2023
A JSON serialize class to convert 'to' and 'from' JSON format Enums, DateTime and any of your own classes.

A JSON serialize class to convert 'to' and 'from' JSON format Enums, DateTime and any of your own classes. Introduction Jsonize solves the problem of

null 2 Nov 17, 2022
An application used to manage all your tabs in a clean, scrollable, categorized format.

Tabmanager Created by Sami-ul You can contact me here: [email protected] Recent updates Made the app run faster by using the backend to serve t

Sami 7 Nov 2, 2022
Project demonstrates building a simple chat application using Flutter framework and Firebase cloud

Flutter Chat on Firebase Project demonstrates building a simple chat application using Flutter framework and Firebase cloud. App does not poll for new

Sukitha Udugamasooriya 8 Feb 2, 2022
Building a simple Flutter app for understanding the BLoC State Management including: Cubit, Managing Route & showSnackBar.

Building a simple Flutter app for understanding the BLoC State Management including: Cubit, Managing Route & showSnackBar.

TAD 8 Dec 3, 2022
Building a simple Flutter app * Switch Theme * for understanding the BLoC State Management including: Cubit Communications with StreamSubscription & Managing Route.

Building a simple Flutter app * Switch Theme * for understanding the BLoC State Management including: Cubit Communications with StreamSubscription & Managing Route.

TAD 1 Oct 3, 2022
Easy form building in Flutter with a fluent schema API.

former - Easy form building in Flutter Motivation Formik is one of my favorite React libraries. It is a form library that drastically reduces boilerpl

Kenneth 21 Oct 11, 2022
The ROHD Verification Framework is a hardware verification framework built upon ROHD for building testbenches.

ROHD Verification Framework The ROHD Verification Framework (ROHD-VF) is a verification framework built upon the Rapid Open Hardware Development (ROHD

Intel Corporation 18 Dec 20, 2022