About • Features • Pending (to do) • How it works • Tech Stack • Author • License
IBM Watson Text To Speech
- Add text comment
- Listen to speech (text comment converted into audio)
- Using IBM Watson Text To Speech from IBM Cloud Services
- Audio player
- Play, stop and resume speech
- Improve UI
- Add UI feedback while comment text is being converted to audio.
- Responsive Design
Application is not entirely responsive yet. Still working on that.- Layout is now responsive.
- Tests
- Write tests with Jest. I should be pushing some tests very soon.
- Improve performance
- Look for re-rendering effects and eliminate them.
Before you begin, you will need to have the following tools installed on your machine: [Git] (https://git-scm.com), [Yarn] (https://yarnpkg.com/), [Docker] (https://www.docker.com/) In addition, it is good to have an editor to work with the code like [VSCode] (https://code.visualstudio.com/)
# Clone this repository
$ git clone git@github.com:viniciusbsneto/text-to-speech.git
# Run MySQL docker container with parameters <database_name> and <database_user_password> of your choice
$ docker run -p 3306:3306 --name <container_name> -e MYSQL_ROOT_PASSWORD=<database_user_password> -d mysql:latest
# Check if the container has started
$ docker ps
# If it hasn't been started, run:
$ docker start <container_name>
# Enter MySQL container
$ docker exec -it <container_name> bash
# Access MySQL terminal with root user
$ mysql -u root -p
# Create a database
CREATE DATABASE <database_name>;
# MySQL 8 (latest) has caching_sha2_password as an authentication method by default. NodeJS has not support for it yet.
# mysql_native_password should be used. Substitute <password> for a password of your choice in the following query and run it.
# Root user should not be used, but for now it's ok for the purpose of this application. DO NOT REMOVE STRING MARKS.
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<password>';
FLUSH PRIVILEGES;
# Access the back-end project folder and open it in a code editor
$ cd text-to-speech/backend
# Set ormconfig.json file with your information (username, password, database)
# Rename .env.example file to .env and provide your API Key and API URL of your IBM Watson Text To Speech Service instance.
# Install dependencies
$ yarn
# Start the application
$ yarn dev:server
# Yarn script will start the application at http://localhost:3333
# Access the front-end project folder
$ cd text-to-speech/frontend
# Install dependencies
$ yarn
# Start the application
$ yarn start
# Yarn script will start the application at http://localhost:3000
The following tools were used in the construction of the project:
- Typescript
- React
- Create-React-App
- Styled-Components
- Axios
- NodeJS
- Express
- CORS
- UUIDV4
- TypeORM
- MySQL
- Docker
- IBM Watson Text To Speech Node SDK
- DotEnv
See the file package.json
- Code Editor: Visual Studio Code
- Linter: ESLint
- Code Formatter: Prettier
- Editor Plugin: EditorConfig
- Markdown: StackEdit, Markdown Emoji
- Fork the project.
- Create a new branch with your changes:
git checkout -b my-feature
- Save your changes and create a commit message telling you what you did:
git commit -m" feature: My new feature "
- Submit your changes:
git push origin my-feature
This project is under the license MIT.
Made with love by Vinícius Neto 👋🏽 Get in Touch!