GithubHelp home page GithubHelp logo

agungprabowo / cbj_app Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cybear-jinni/cbj_app

0.0 1.0 0.0 213.18 MB

CyBear Jinni App ๐Ÿ“ฑ is the app to control CyBear Jinni Smart Devices ๐Ÿ’ก remotely from your Android and IOS phones. If you have ever wondered "is there open source project to make my own smart home?", This is just part of one.

License: GNU Affero General Public License v3.0

Kotlin 0.10% Swift 0.34% Objective-C 0.03% Dart 99.53%

cbj_app's Introduction

CyBear Jinni App

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 and manage the CyBear Jinni smart devices through your Android and IOS smartphones.

The CBJ App is written in Flutter and let you control all the CBJ Smart Devices using local Wi-Fi and remotely through Google Cloud Firestore.

To get the project running

Attention

  • The app is not in the play store so you will need to upload it to your smartphone with a little knowledge about Flutter.

App preparations:

We need to install the app to your smartphone.

For now the app is not in the play store so install the flutter project to your phone manually.

Instructions for developers part is needed in order to connect the application to the smart devices, if you do not intend to do so than you can just run the app without extra steps.

Connecting the smart device to the CyBear Jinni App:

Find the smart device Wi-Fi IP, it will be something like 10.0.0.12 .

Connect the phone to your home Wi-Fi.

Now we need to link the smart device from inside the phone app.

In the app go to: "Lamps" tab --> Press the cog in the top right corner --> Press the plus button --> Insert the smart device IP and press "Add" --> Change the device name and press the "Update" button --> Press the "Add devices".

That's it.

Now you can control your smart device from the CyBear Jinni App ๐Ÿ˜.

Instructions for developers

  • This part is only required if you are going to connect the application to the smart devices, if not you can just run the app without extra steps.
  1. Insert your Firebase configuration into your flutter app.

    Location: https://console.firebase.google.com --> Select project --> In the left side navigation drawer under the "Develop" click the "Authentication" text --> Click the button "Add user" --> Fill email and password and press "Add user" button.

    • Download the google-services.json file from your Firebase console project.

    Location: https://console.firebase.google.com --> Select project --> In the left side navigation drawer click on the cog at the top --> Project settings (It will take you to the General tab) --> Click "Add app" --> choose "Android" --> Fill all the details according you app --> Download google-services.json .

    Move google-services.json into the flutter project to the .../android/app/ folder.

  2. Copy the following fields values from the google-services.json:

    project_id, current_key

    into the file constant_credentials.dart to

    fireBaseProjectId, fireBaseApiKey

    fields respectively.

    In the same file insert the firebase account credentials (email and password) that we created earlier into the fields

    userEmail, userPassword.

    Congratulations now deploy the app to your phone and you can connect to the smart devices with your own Cloud Firebase.

Architecture

The code is based on DDD (Domain-Driven Design) principles, you can learn it from here.

Architecture diagram:

Disclaimers

Use at Your Own Risk, we do not take responsibility on any outcome using anything in this repo.

The project is under heavy work and may contain bugs and incorrect instructions.

Social Media Links

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

cbj_app's People

Contributors

guyluz11 avatar tamir198 avatar

Watchers

 avatar

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.