Git Product home page Git Product logo

emoji_party_2's Introduction

emoji_party_2

Developments on top of emoji_party_1

  • Drag and drop emojis on the screen.
  • Add, select and delete
  • When selected, all emojis will drag together
  • Reorder the heights of emojis
  • Resize any emoji by dragging edges and corners
  • Selecting an emoji will recursively select emojis on-top of it
  • Clicking info wills show some debug data about the emoji indexes and heights
  • In debug (info icon) you can view some of the calculated data

Latest screen shot

In app screenshot

Some features

Debug

Shows debug mode (top right icon) i: stack index h: height (ie: number of emojis under in a stack) p: number of "parent" emojis (ie: directly below) c: number of "child" emojis, (ie: directly above) Note, this is not the same as "parent" and "child" in flutter.

This also shows some more data in the debug console

screenshot2

Recursive select/deselect

Recursive select will select all emojis above the selected one. This allows for quickly selecting and moving a group of emojis, simply by selecting the bottom one. In this case we click rock-climber (which is at height 0) Dice is selected as it is immediately above it. Wizard is not selected as it is at height 2 due to the truck that the exclamation mark. Therefore the wizard is not really sitting on the rock-climber. screenshot3

Auto height

When a large emoji is dragged or scaled over a smaller one, it will automatically fall below that emoji

screenshot4

Here we see airplane-arrival fall under book and yo-yo, but not under fast-forward.

screenshot5

Similarly, dragging a small emoji completely under a large one will cause it to pop on top of the larger one. Here we see the fast-forward icon jump on-top of airplane arrival, but not the yo-yo.

screenshot6

Known issues

  • Rotate function is experimental and causes drag and scale to behave badly. There is not plan to fix this at this time.
  • Some Emojis don't render
  • Android has an issue with scaling emojis above a certain size. Stackoverflow question here. The workaround here is just to limit the size of the boxes.

What is this project?

“Emoji party” is an open-source project that I am working on.

It is not intended to provide any direct value as an app or a game. (Although it would be funny if it turns into something like that).

All of the demonstrated functions in this repository are made freely available for other developers to use in their projects. As such all works in the Lib directory are licensed under creative commons CC0 1.0 Other files are generated by the flutter framework and associated plugins and packages are under whatever licenses are connected to those projects.

The project is a personal learning exercise, as well as, an easy-to-share project that demonstrates some functionality that I require in other private projects. This allows the occasional voluntary contributor or even a contractor to achieve some nice-to-have ideas, without any need for NDA’s, access rights, or red-tape. Hopefully this also contributes something to the open-source community.

Feel free to fork and pull request for minor changes. Happy to get feedback.

Feel free to fork and make your own video tutorials based on this code. No attribution is required.( But, I’m always glad to hear about it).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.