With no doubt not the best option ever
but you could make a name generator that has a set of rules and procedures.
For example, generate each name character by character and have rules as to which character can be followed by which and which cannot follow up.
Example (using the name you had already provided just to give you the idea).
First character: “S”.
Which characters can follow up?
Possible follow ups: A, E, I, R, T, O, U, Y
Name generator chooses “T” as the next character.
Which characters can follow up now?
Possible follow ups: A, E, I, R, U, Y
Generator chooses “R”, you now have “Str”.
this goes on until you have the full name “Strucid” for example, length of names can be randomized too and you may want to add a small system so it doesn’t give incomplete names like “Struc”, for example, tell your code to not stop generating until said name ends with a certain character (a list of characters the name can and cannot end with).
It may sometimes generate unpronouncable names and in some cases you may want to filter it and re-generate if it accidentally generates a bad word though, but I think that this would work.
If it doesn’t work with single characters, try 2 or 3 characters like “Stru” and “cid”.
Have a table containing beginning/starter characters like “Stru” and then create a hierarchy that goes down and which words could follow up next.
What I also see as a possible option is literally look up a word book or dictionary, pick out a bunch of words and cut them all into pieces, then assemble them randomly in appropiate ways (like I said above, using a hierarchy of which words can and cannot be assembled/connected) but you may also want to add a length limit so it doesn’t generate endlessly until it has figured out with which character to end the name (chance is rare that this happens though, but it’s possible to get names with like 200 characters lol).