Text to Speech Site Using Glitch

Project URL: https://tts.willm.xyz

This project is a text to speech site! It does what the name says - converts your text to speech! Using the URL based https://tts-mp3.glitch.me (not owned by me), I created this. It’s really simple and the index.html page is all it uses! (besides external CSS/Scripts referenced in the code)

Anyways, I decided to slap it on a custom domain. My main site is https://willm.xyz if you wanted to check that out - there’s even more cool projects over there.

Please let me know what you think!
:heart: - Will

Bonus: Try typing the F---- word and see how the word gets censored and replaced by a more friendly word.

5 Likes

The voice sounds really nice compared to all the other free options out there! Will definitely use in the future! Thanks! :slight_smile:

4 Likes

Thank you for the nice feedback!

3 Likes

If y’all want to I have a discontinued project aiava, it works, but hasn’t been updated since last year.

Features:

  • Text-to-speach
  • Speach-to-text

(For use with webpack or parcel).

pnpm install aiava

import Ava from "aiava";

export default class John
{
    
    public logs: string[] = [ ];
    public speaker = new Ava.TextToSpeech({});
    public input = new Ava.SpeechToText();
    public trigger = new Ava.HotTrigger(/^(((Hello|Howdy|Hi|Hello) John)|John)/gi);
    
    public commands = [
        { trigger: new Ava.HotTrigger(/^(say|tell|speak)/gi), action: data => this.say(data) },
        { trigger: new Ava.HotTrigger(/day/gi), action: d => this.say("Today is " + (n=>(["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"])[n-1<0?6:n-1])((new Date(Date.now()).getDay()))) }
    ];
    
    public listen = false;
    
    say (data, cb?)
    {
        this.speaker.say(data, cb);
        this.logs.push("Bot: " + data);
    }
    
    in (data)
    {
        console.log(data, this.trigger.test(data), this.trigger.trim(data));
        if (!this.listen)
        {
            const successfull = this.trigger.test(data);
            const trimmed = this.trigger.trim(data);
            if (successfull)
            {
                this.listen = true;
                if (trimmed) this.in(trimmed);
                else this.say("Hello!");
            }
        } else
        {
            this.listen = false;
            this.logs.push("You: " + data);
            const command = this.commands.find(cmd => cmd.trigger.test(data));
            if (!command)
            {
                this.say("Sorry, I didn't understand that!");
            } else
            {
                command.action.bind(this);
                command.action(command.trigger.trim(data));
            }
        }
    }
    start ()
    {
        this.say("Hello World");
        this.input.on("final", e => this.in(e.results[e.resultIndex][0].transcript));
        this.input.on("end", e => this.input.start());
        this.input.start();
    }
}
2 Likes

There is an in-built API (for Chrome, I think) which includes speech-to-text coversion and speech synthesis.

Indeed, that is the one I’m using :slight_smile:

2 Likes

Thats neat! Thanks for sharing. Is it open source?

Well it was, but the repo got deleted by accident :frowning: I might look into re-creating it again. However, if you download the package I think it should still be readable

2 Likes

cool, really cool. i approve.
nice site

4 Likes

where do i go for text to speech

Hello, it appears that OP renamed or removed the project. I would recommend looking into Google’s TTS APIs.

It’s deleted

@RiversideRocks already said that, no need to repeat what he said.

1 Like