anisdismail / NuroApp

An application to help you learn Machine Learning!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NuroApp

Contributors Forks Stargazers Issues LinkedIn MIT License


Nuro app logo

Nuro - Learning Machine Learning is Fun!


Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents

  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. Contact
  7. Acknowledgements

About The Project

In this project, we designed and implemented a not-for-profit Android application developed in Android Studio that teaches teens and high school students about Machine Learning in a fun and interactive way. The app is called “Nuro”, inspired by neural networks, an emerging technology in Artificial Intelligence.

Built With

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

  • All required dependencies can be installed with Gradle.

Installation

  1. Clone the repo
    git clone https://github.com/anisdismail/NuroApp.git
  2. Change to the project repositry:
    cd NuroApp
    
  3. Load and Run the Project in Android Studio

About the Project

1. Log In Page:


The user is prompted to enter their email address and password. Both fields are required to be not empty, and the email text needs to conform to the general email text form. The user can enter their credentials, they will then either be prompted to activate their account from their email, or just log in (depending on whether they had activated it before or not). The authentication makes use of the firebase authentication module, we persist the sign in state so as to not require a login each time the app is opened. If the user does not have an account, he can create one by clicking on the “Create an Account” button.

2. Sign Up Page:


The user enters their first name, last name, username, email and password, all of which need to conform to their own specific standard (password length, email, text fields not empty). Should the user misconfigure one of them, a small note would be triggered from the edit text.

3. Tutorials:


Through the tutorials, the user can learn several ML concepts. In the first module, the user will learn their way through machine learning workflow. There are 7 steps in this tutorial, and every time the user presses next, they will move on to the next step.

As the user progresses through learning about ML, the user is prompted to solve a quiz. We also keep track of the score to show how many questions were correct. Finally, in case the user selected the wrong answer, they will be prompted with an alert dialogue to show it was incorrect and try again.

4. Project:

  • After successfully completing the quiz, the user will then move to the final part of the module.
  • In this project, the user will be asked to use the knowledge acquired in this module to build a ML workflow from start to end.
  • The user can drag any shape from the top layout to the drawing region and can connect it to any other shape.
  • Once the user is satisfied with the design, the user can press on the validate button (back triangle) to validate if the design is correct or not.
  • The user can press the home button to return to the main activity.
  • The user can also press the trash button to eliminate a shape from the graph.
  • To delete all the shapes, the press should press the half cycle button to reset the design.

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contact

Your Name - Anis Ismail - anisismail09[at]gmail[dot]com

Project Link: https://github.com/anisdismail/NuroApp

Acknowledgements

About

An application to help you learn Machine Learning!

License:MIT License


Languages

Language:Java 100.0%