restructure and add ruby