Flemozi
A simple✨, fast⚡ and lightweight🪶 emoji picker for desktop operating systems🫶
Available for Linux🐧, Windows🪟 and macOS🍎.
Highlights🚀
- Not Electron based🙃
- Configurable Global🪩 shortcut🩳✂️ to open the emoji picker
- Launches on system startup, runs in the background and can invoked from anywhere👻
- Supports GIFs📼, stickers🎟️ and ASCII emojis👴 too
- Copies the selected emoji to the clipboard📋 and automatically closes the picker obviously🤦♂️
Installation📦
Sponsor☕💘
Screenshots
Contributing🤝
Contributions are always welcome! Please read the contribution guidelines first.
Building from source🛠️
Prerequisites📋
- Flutter SDK v3.7.0 or higher
- Rust v1.65.0 or higher
Building🏗️
You'll need your own giphy and tenor api keys. Create a .env
file in the root of the
project and fill following the .env.example
file
$ git clone https://github.com/KRTirtho/flemozi.git
$ cd flemozi
$ flutter pub get
$ flutter config --enable-<linux/windows/macos>-desktop
$ flutter pub run build_runner build --delete-conflicting-outputs
$ flutter build <linux/windows/macos>
Credits🙇
Acknowledgements🙏
Libraries Credit📚
Click to expand! (Reveal those gems💎)
-
cached_network_image - Flutter library to load and cache network images. Can also be used with placeholder and error widgets.
-
collection - Collections and utilities functions and classes related to collections.
-
flutter_hooks - A flutter implementation of React hooks. It adds a new kind of widget with enhanced code reuse.
-
fuzzywuzzy - An implementation of the popular fuzzywuzzy package in Dart, to suit all your fuzzy string matching/searching needs!
-
google_fonts - A Flutter package to use fonts from fonts.google.com. Supports HTTP fetching, caching, and asset bundling.
-
hooks_riverpod - A simple way to access state from anywhere in your application while robust and testable.
-
http - A composable, multi-platform, Future-based API for HTTP requests.
-
riverpod - A simple way to access state from anywhere in your application while robust and testable.
-
window_manager - This plugin allows Flutter desktop apps to resizing and repositioning the window.
-
launch_at_startup - This plugin allows Flutter desktop apps to Auto launch on startup / login.
-
package_info_plus - Flutter plugin for querying information about the application package, such as CFBundleVersion on iOS or versionCode on Android.
-
shared_preferences - Flutter plugin for reading and writing simple key-value pairs. Wraps NSUserDefaults on iOS and SharedPreferences on Android.
-
alfred - A performant, expressjs like web server / rest api framework thats easy to use and has all the bits in one place.
-
system_theme - A plugin to get the current system theme info. Supports Android, Web, Windows, Linux and macOS
-
flutter_svg - An SVG rendering and widget library for Flutter, which allows painting and displaying Scalable Vector Graphics 1.1 files.
-
url_launcher - Flutter plugin for launching a URL. Supports web, phone, SMS, and email schemes.
-
fl_query - Asynchronous data caching, refetching & invalidation library for Flutter
-
fl_query_hooks - Elite flutter_hooks compatible library for fl_query, the Asynchronous data caching, refetching & invalidation library for Flutter
-
giphy_api_client - A Giphy API Client for Dart compatible Web, Flutter, and server-side dart
-
flutter_dotenv - Easily configure any flutter application with global variables using a `.env` file.
-
json_annotation - Classes and helper functions that support JSON code generation via the `json_serializable` package.
-
visibility_detector - A widget that detects the visibility of its child and notifies a callback.
-
pasteboard - A flutter plugin which could read image,files from clipboard and write files to clipboard.
-
flutter_cache_manager - Generic cache manager for flutter. Saves web files on the storages of the device and saves the cache info using sqflite.
-
super_clipboard - Comprehensive clipboard access package for Flutter. Supports reading and writing of rich text, images and other formats.
-
path - A string-based path manipulation library. All of the path operations you know and love, with solid support for Windows, POSIX (Linux and Mac OS X), and the web.
-
easy_debounce - An extremely easy-to-use method call debouncer package for Dart/Flutter.
-
uuid - RFC4122 (v1, v4, v5) UUID Generator and Parser for all Dart platforms (Web, VM, Flutter)
-
shimmer - A package provides an easy way to add shimmer effect in Flutter project
-
hive_flutter - Extension for Hive. Makes it easier to use Hive in Flutter apps.
-
auto_size_text - Flutter widget that automatically resizes text to fit perfectly within its bounds.
-
path_provider - Flutter plugin for getting commonly used locations on host platform file systems, such as the temp and app data directories.
-
flutter_lints - Recommended lints for Flutter apps, packages, and plugins to encourage good coding practices.
-
melos - A tool for managing Dart & Flutter repositories with multiple packages (monorepo). Supports automated versioning via Conventional Commits. Inspired by JavaScripts Lerna package.
-
json_serializable - Automatically generate code for converting to and from JSON by annotating Dart classes.
-
build_runner - A build system for Dart code generation and modular compilation.
-
flutter_launcher_icons - A package which simplifies the task of updating your Flutter app's launcher icon.
-
html - APIs for parsing and manipulating HTML content outside the browser.
-
pub_api_client - An API Client for Pub to interact with public package information.
-
window_size - Allows resizing and repositioning the window containing Flutter.
-
hotkey_manager - This plugin allows Flutter desktop apps to defines system/inapp wide hotkey (i.e. shortcut).
License📜
This project is licensed under the GPLv3 license.
Copyright© 2023 Kingkor Roy Tirtho