Best android open-source packages and libraries.

Final_Project

As part of my studies, I completed a final project - a voice assistant application that enables sending and reading of messages, the program is based on artificial intelligence technologies that enable this integrative solution.
Updated 1 year ago

Final Project - Voice Translate

An Android app that allows you to send and read messages using voice commands.

Built With

  • Text to speech : react-native-tts

  • Speech to text : react-native-voice

Installation

The program has a server side and a client side so we will need to perform separate installations.

Back End

Open first console in the main path VoiceTranslate \ server and install node modules with the command

  • npm install
  • then, enter the command node index.js to run the server.

Front End

Open a second console in the main path VoiceTranslate \ finalProject and install node modules with the command

  • npm install
  • then, enter the command npx react-native start to run the metro.

Open a third console in the main path VoiceTranslate \ finalProject and enter the command

  • npx react-native run-android to run the program.

Communication between back end and front end

To connect to a socket for communication between the server side and the client, enter an IPV4 address of the device, in line 15, in the following file - VoiceTranslate \ finalProject \ src \ screens \ AuthenticationScreen.js

In the next command

  • const socket = io ("http: // HERE: 3000");

Folder structure

Front End (FinalProject)

  • src
    • asyncStorage
    • components
      • AssistButton.js: main component, responsible for managing the main activity.
      • FloatingButton.js: component inside the home screen, used to display the settings and a logout button.
      • LoadingSpinner.js: cComponent responsible for the rotating spinner to display a user indication to the TTS output.
      • SoundWave.js: Wave animation component, will turn on when every time the TTS will stop (indication use).
    • dataBase:
      • FireBase.js: component responsible for the fireBase database.
    • images
    • router
      • RouterInitializer.js: responsible for booting the router using props and asynchronous storage.
      • Router.js: receive props as a parameter from the routeInitializer screen and route the user accordingly.
    • screens
      • AuthenticationScreen.js: responsible for linking the user to the messaging app.
      • HomeScreen.js: holds the following components - AssistButton and FloatingButton.
      • ReadManual.js: responsible for displaying the application manual in case of reading a message.
      • WriteManual.js: responsible for displaying the application manual in case of sending a message.
      • SettingsScreen.js: holds the features and the manual of the application.
      • SignIn.js: responsible for the user entering the application, works in front of the database.
      • SignUp.js: responsible for registering the user for the application using the database.
    • styles
    • utilities
      • assistButtonUtilities.js: contains Voice Assistant vocabulary, regular expressions, and user input comparison commands.

Back End (server)

  • dist: folder that holds the app site design.
  • index.js:responsible for the messaging app and the app website.

Link To Video

ezgif com-gif-maker

Tags socket io