📱 CyBear Jinni App is the app to control CyBear Jinni Hub 💡 remotely from your Android, IOS and Web Browser

Overview

CyBear Jinni App

Playstore: install Snapcraft dart CI style: lint License: AGPL v3

CyBear Jinni image

Welcome

This repository is in charge of the CyBear Jinni App and is part of the CyBear Jinni Smart Home system.

The CyBear Jinni App lets you control the CyBear Jinni Hub that manage the smart devices from different vendors.

It is writen with Flutter and let you control the CyBear Jinni Hub directly in the local Wi-Fi and remotely through cbj remote pipes which transfer requests to the Hub without collecting any data.

Android Badge Snap Store Badge

Instructions for developers and testers

To run the app and start developing or testing check this Wiki.

To learn the coding guidelines check this Wiki.

Social Media Links

If you have any questions feel free to ask in our Discord server

Comments
  • Adding translations

    Adding translations

    Hi

    Do you want to help open source project?, or perhaps you're looking for easy pull request!.

    If you know how to write this is your chance, lets get down to it.

    First locate your language in this page. Now remember the Language (two letter) - Region (two capital letter) of your region.

    In this folder you will see files with the names of the Language-Region, if yours does not exist please create a new file for it.

    Even if the language already exist but your region is not it is ok to open pull request, for example: en-GB it will be accepted because it is not en-US which already exists.

    So how do you do it:

    Language file does not exist

    1. In this folder copy the en-US.json (as it is our base to translate) change the name of the copy to your Language-Region.

    2. Change the right side of the text to your language, you should keep the {} in the same place inside the word as it is place holder.

    3. Open the pull request to the dev branch.

    Language file exists

    1. Copy all missing translations from en-US.json into your existing Language file that we located earlier.

    2. Change the right side of the text to your language, you should keep the {} in the same place inside the word as it is a placeholder.

    3. Open the pull request to the dev branch.

    If you have any questions you can ask me in the Discord server

    good first issue hacktoberfest super easy 
    opened by guyluz11 30
  • Devices Scroll location changing when list size changes

    Devices Scroll location changing when list size changes

    Whenever we turn devices on and off they are added and removed from the summary section, because of that the size of the list is changing and your current place in the list changes a little bit up or down.

    We should keep the user in the same position that he scrolled even when new items are added or removed from the list.

    20220508_144232

    I have just added to the Wiki instructions on how to get to the demo mode so use it to test that.

    If you need any help with that you can ask in the cbj discord server

    bug hacktoberfest hacktoberfest-accepted 
    opened by guyluz11 16
  • Add login with Firebase to the flutter app

    Add login with Firebase to the flutter app

    We are currently have a non working login page located here.

    Pressing the "Log In" button just passing the user to the next page without any validation that the credentials exist in the Firebase users database.

    We need to

    • [x] Add request to Firebase to check if user exist.
    • [x] Login automatically if the user have logged in before.
    enhancement hacktoberfest hacktoberfest 2020 
    opened by guyluz11 14
  • Snap icon does not show in os's app launchers

    Snap icon does not show in os's app launchers

    After downloading a snap the icon of the snap should be added to the app launchers of the different Linux os's. We are probably missing a small section in the snapcraft.yaml that will set it up with app icon and all.

    image

    The snapcraft.yaml file can be found in the app snap repo

    https://github.com/CyBear-Jinni-user/CBJ_App_Snap

    bug good first issue 
    opened by guyluz11 12
  • Software Info text is out of bound

    Software Info text is out of bound

    The text in the Software Info screen is out of bounds

    To arrive at the screen

    1. Open the app in demo mode.
    2. Click the + button at the bottom of the screen
    3. Click on Software Info orange button
    CyBear Jinni image CyBear Jinni image bug good first issue hacktoberfest hacktoberfest-accepted 
    opened by guyluz11 11
  • App icon need to be changed

    App icon need to be changed

    As we just got nice new icon from our create fan art issue we are going to update it everywhere in the app.

    All the images of the owl (logo.png) in the app should be updated to the new logo.

    That's include the icon of the app, the image in the splash screen, the image in the login page.

    If more places exist please change it as well

    Please change the name of the file from logo to cbj_logo .

    Here is an image of the logo that I removed the background. You will probably need to change the dimensions of the image to the right ones.

    enhancement good first issue hacktoberfest hacktoberfest 2020 
    opened by guyluz11 9
  • Adding badges to readme

    Adding badges to readme

    Please make the readme top part same as this readme.

    Don't forget to change the title to CyBear Jinni App and the link to the dart cli badge to this project action.

    enhancement good first issue hacktoberfest hacktoberfest 2020 
    opened by guyluz11 8
  • New

    New "Forgot password" page is required

    In the login page we have "Forgot password?" text that does not do anything.

    When the user pressing the text he need to move to different page and insert his details to reset his password using the FireBase api .

    For now pleas do it without functionality as we don't want it to collide with #5 and have duplicated code to control FireBase.

    • [x] Add forgot password page to the app.
    • [ ] Add functionality to it using FireBase api.
    enhancement good first issue hacktoberfest hacktoberfest 2020 
    opened by guyluz11 8
  • Demo mode devices are hard coded

    Demo mode devices are hard coded

    I have just pushed the demo mode of the app and I used hard-coded values for the devices.

    This is bad practice as we all know XD.

    Please change the hard coded devices string that comes from the Hub (in demo mode).

    You should create an object of that device with all the corresponding values, then use .toDts on it and then use .toJsonString.

    https://github.com/CyBear-Jinni/cbj_app/blob/0cbb6be1ea3606829746d788961bf7f48ac400d2/lib/infrastructure/hub_client/hub_client_demo.dart#L85

    Should look like this

    GenericBlindsDE guyBlinds = GenericBlindsDE(...);
    DeviceHelper.convertDomainToJsonString(guyBlinds);
    
     String allRemoteCommandsBlinds = DeviceHelper.convertDomainToJsonString(guyBlinds);
    

    I have just added to the Wiki instructions on how to get to the demo mode so use it to test that the app behaves the same

    If you need any help with that you can ask in the cbj discord server

    documentation good first issue hacktoberfest 
    opened by guyluz11 7
  • I can add blank password made of tabs

    I can add blank password made of tabs

    Both in the login page and in the create a new user there is a requirement that the password and the email should not contain any spaces:

    image

    This works fine if I try to enter spaces, but I can enter a password and email that only contains tabs. In this case, the app will act just as everything is normal and there was not a single space entered from the user.

    bug good first issue 
    opened by Tamir198 7
  • Readme file missing most of the Social Media Links

    Readme file missing most of the Social Media Links

    Readme file missing most of the Social Media Links

    image

    As you can see at the bottom of our site we have accounts on many more social media platforms.

    https://cybearjinni.com/#/

    image

    Please add links and icons with all the platforms to the readme file.

    enhancement good first issue hacktoberfest hacktoberfest-accepted super easy 
    opened by guyluz11 6
  • Discovered scenes folder containing all scenes

    Discovered scenes folder containing all scenes

    Screenshot_20221201_110057

    I am not sure if this is coming from the app or from the Hub but it seems that all existing scenes are being presented inside the discovered scene folder as well in their correct scene folder.

    bug good first issue 
    opened by guyluz11 0
  • loadWifiList function is depraceted

    loadWifiList function is depraceted

    WiFiForIoTPlugin.loadWifiList() is depraceted

    'loadWifiList' is deprecated and shouldn't be used. This is discontinued, switch to the newwifi_scanplugin by WiFiFlutter. Check - https://pub.dev/packages/wifi_scan. (Documentation)

    Path cbj_app/lib/application/configure_new_cbj_comp/configure_new_cbj_comp_bloc.dart:243

    good first issue Improving code organization 
    opened by guyluz11 0
  • Change welcome screen according to the new moc

    Change welcome screen according to the new moc

    Our welcome screen will get some changes to be more appealing.

    Let's change it to look like the new moc, and use the current CyBear Jinni logo.

    Our current welcome screen

    Screenshot_20221115-154637

    Our new moc

    image

    Instead of the text at the bottom keep the current changing text animation that we have

    enhancement good first issue 
    opened by guyluz11 0
  • Explore better handleing of hub connection

    Explore better handleing of hub connection

    It looks like the last version of grpc have brought some new functionality that may help us improve the connection reliability to the hub

    Screenshot_20221110-221400_Firefox

    The current way of connecting try to handle a lot of different cases and the code can be improved, even more so with the last grpc update.

    We aspire for the app and the hub to keep an open stream between the two all the time. There are some cases that making that hard for us.

    The app should handle the following cases

    • Automatically connect to the hub through Wi-Fi if it's stopped and the app is still on the home Wi-Fi.
    • Automatically reconnect to the hub through Wi-Fi if user turn off and then on the Wi-Fi.
    • Automatically moving between direct connection to the hub through Wi-Fi and connection to the hub through remote pipes if it is on different network than home Wi-Fi (that's include cellular network and other Wi-Fi networks).
    enhancement Improving code organization 
    opened by guyluz11 0
Owner
CyBear Jinni
🦾🐼🧞‍♂️ Control your smart home devices with one app while keeping your privacy.
CyBear Jinni
Easy to use open source Hub 🕸️ to control your smart devices from one app.

CyBear Jinni Hub Welcome! This repository is in charge of controlling smart devices and is part of the CyBear Jinni Smart Home system. The software is

CyBear Jinni 13 Jul 22, 2021
This is a smart farming app which helps farmers to remotely monitor their crop and take necessary actions. It also has a feature called disease detection.

Smart-Farming-App This is a smart farming app which helps farmers to remotely monitor their crop and take necessary actions. It has features called di

Nihar Shah 2 Jul 9, 2022
Dig is a hub blockchain that interconnects physical plots of land, which will each be governed by a locally operated blockchain.

Dig is a hub blockchain that interconnects physical plots of land, which will each be governed by a locally operated blockchain. Due to the regulatory challenges involved, dig splits itself up into many chains which can each follow appropriate legislation. This is the beginning of the "Dig Network."

notional-labs 183 Dec 17, 2022
Tesla car app using Flutter that works both android and iOS. Users can unlock any door, check battery status also control the air cooler temperature and check the psi of the tires.

Tesla App Tesla car app using Flutter that works both android and iOS. Users can unlock any door, check battery status also control the air cooler tem

null 12 Dec 18, 2022
A Flutter plugin for handling Connectivity and REAL Connection state in the mobile, web and desktop platforms. Supports iOS, Android, Web, Windows, Linux and macOS.

cross_connectivity A Flutter plugin for handling Connectivity and REAL Connection state in the mobile, web and desktop platforms. Supports iOS, Androi

MarchDev Toolkit 29 Nov 15, 2022
A Flutter application to easily manage and control your Algorand nodes.

Algorand Node Companion App Algorand Node Companion App is a mobile, web and desktop application that can manage, operate and track the status of your

Tomas Verhelst 15 Oct 18, 2022
Flutter Web application having splash screen and providing Web view Using web view packege.

Webview with Splash Screen in Flutter Flutter Web View With Splash Screen. Subscribe Our YouTube Channel. Visit Website Demo OutPut ?? Links Getting S

Habib ullah 1 Dec 7, 2021
The FlexGrid control provides a powerful and quickly way to display data in a tabular format. It is including that frozened column/row,loading more, high performance and better experience in TabBarView/PageView.

flex_grid Language: English| 中文简体 The FlexGrid control provides a powerful and quickly way to display data in a tabular format. It is including that f

FlutterCandies 39 Nov 8, 2022
Decentralized SkyDB-based alternative to Twitter, YouTube and Instagram with a native iOS, Android and web app.

SkyFeed SkyFeed is a decentralized SkyDB-based alternative to Twitter, YouTube and Instagram with a native Android, web and (soon) iOS app. Use You ne

null 88 Oct 28, 2022
A new Flutter Application to control self build lamps for my personal use.

A new Flutter Application to control self build lamps for my personal use. You need extra hardware & software for getting this project running. This is just the code of the App.

null 1 Mar 2, 2022
Simple weekly financial control project.

lion_tax A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this

Vinicius - @vini.code 1 Nov 11, 2021
Sharezone is a collaborative school organization app for iOS, Android, macOS and web.

Download Sharezone Android iOS macOS Web Sharezone is a collaborative school organization app for iOS, Android, macOS and web. With Sharezone pupils,

Sharezone 93 Dec 18, 2022
Learn to build apps that work on Android, iOS, Web, and Desktop

Cross-Platform Development with Flutter Course Learn to build apps that work on Android, iOS, Web, and Desktop Go To Course Flutter is Google’s UI too

Mohamed Ibrahim 11 Oct 24, 2022
Video player-2.2.10 - A Flutter plugin for iOS, Android and Web for playing back video on a Widget surface

Video Player plugin for Flutter A Flutter plugin for iOS, Android and Web for pl

null 2 Sep 29, 2022
Flutter application that implements socket.io in Node.js Works in - Android, iOS and Web

Quick Chat - Flutter Flutter application that implements socket.io in Node.js Works in - Android, iOS and Web This repo only contains Flutter (fronten

Aayush Nikkon Subedi 22 Dec 23, 2022
Task List application developed in Dart language with SDK Flutter for Android, iOS and Web

Task List application developed in Dart language with SDK (Software Development Kit) Flutter for Android, iOS and Web.

João Bruno 2 Jun 2, 2022
A web dashboard that allows you to monitor your Chia farm and sends notifications when blocks are found and new plots are completed through a discord bot. It can link multiple farmers/harvesters to your account.

farmr A web dashboard that allows you to monitor your Chia farm and sends notifications when blocks are found and new plots are completed through a di

Gil Nobrega 261 Jan 2, 2023
Hybrid App build on flutter SDK able to run on Android, IOS, web, desktop

Codeforces Visualizer APP Ready to use Flutter Application. Uses codeforces API. Useful for codeforces programmers. ScreenShots Single User Page Compa

vikas yadav 13 Dec 31, 2022
A Flutter 2D RPG Game Engine On Web & Android & IOS.

DevilF Engine A Flutter 2D RPG Game Engine On Web & Android & IOS. The Devilf Engine Is A Open Source 2D Game Engine. The Engine Is Development Using

zhaoqipeng 15 Oct 20, 2022