Faits:
A. A._, ressortissant marocain né en 1972, se trouve en détention préventive depuis le 24 avril 2007, sous les préventions notamment de vol, vol d'importance mineure, brigandage, dommages à la propriété, violation de domicile, contrainte sexuelle et viol sur une personne incapable de résistance. Il lui est notamment reproché d'avoir drogué une femme avant d'abuser d'elle. Il aurait également drogué une victime pour lui soustraire quelque 600 fr.
La libération du prévenu a été refusée à plusieurs reprises par décisions du Juge d'instruction cantonal et du Juge d'instruction de l'arrondissement de l'Est Vaudois. Par arrêt du 14 novembre 2007, le Tribunal d'accusation vaudois a confirmé l'une de ces décisions. Les charges étaient suffisantes, en particulier s'agissant de l'accusation de viol: sur ce point, les déclarations de la victime paraissaient crédibles, et celles du prévenu avaient varié; il existait un risque de fuite et de récidive.
Une nouvelle demande de mise en liberté a été rejetée le 16 avril 2008. Par arrêt du 23 mai 2008, le Tribunal d'accusation a confirmé cette décision, en renvoyant à son précédent arrêt. Le prévenu ne faisait valoir aucun argument ou circonstance nouveaux. Le risque de fuite était réel, compte tenu de la nationalité du prévenu et de l'absence d'attaches particulières avec la Suisse. Il était aussi à craindre qu'en cas de libération, le prévenu ne commette de nouvelles infractions afin d'améliorer son train de vie.
B. Par acte du 11 juin 2008, A._ forme un recours en matière pénale assorti d'une demande d'assistance judiciaire. Il conclut à l'annulation de l'arrêt du Tribunal d'accusation et à sa mise en liberté immédiate.
Le Tribunal d'accusation se réfère à son arrêt. Le Ministère public renvoie à l'arrêt attaqué et à son préavis du 5 mai 2008.
Le recourant a eu l'occasion de répliquer.
Considérant en droit:
1. L'arrêt relatif au maintien en détention est une décision en matière pénale au sens de l'art. 78 al. 1 LTF. Rendu en dernière instance cantonale (art. 80 al. 1 LTF), il peut faire l'objet d'un recours en matière pénale. Le recourant a qualité pour agir au sens de l'art. 81 al. 1 let. a LTF; il a agi dans le délai de trente jours (art. 100 al. 1 LTF). Le recours est recevable.
2. Le recourant conteste l'existence de charges suffisantes. Aucune preuve technique ou scientifique n'aurait été recueillie à son encontre. Il relève les contradictions dans les déclarations de certaines victimes, s'agissant en particulier de la contraine sexuelle. Les médicaments dont le recourant aurait pu se servir n'auraient pas les effets décrits par les victimes. Le rapport de police ferait preuve de partialité en insistant sur les contradictions du prévenu.
2.1 Appelé à se prononcer sur la constitutionnalité d'une décision de maintien en détention préventive, le Tribunal fédéral n'a pas à procéder à une pesée complète des éléments à charge et à décharge, ni à apprécier la crédibilité des éléments de preuve mettant en cause le prévenu. Il doit uniquement examiner s'il existe des indices sérieux de culpabilité justifiant une telle mesure (ATF 116 Ia 143 consid. 3c p. 146).
2.2 Cela étant, le recourant confond manifestement les conditions de maintien en détention préventive, soit l'existence d'indices suffisants, et les conditions auxquelles une condamnation peut être prononcée, soit l'absence de doutes sérieux quant à la culpabilité de l'accusé. S'agissant de la détention préventive, les charges recueillies contre le recourant sont clairement exposées dans la décision du 14 novembre 2007, auquel renvoie l'arrêt attaqué. A propos de l'accusation principale, les déclarations de la victime - qui constituent l'élément à charge essentiel - sont confirmées par les constatations médicales; les médicaments, dont les plaquettes vides ont été retrouvées en possession du recourant, peuvent, à dires d'experts, être à l'origine des effets décrits par la victime. Le recourant a pour sa part, changé plusieurs fois sa version des faits, niant dans un premier temps toute relation sexuelle, affirmant ensuite que la victime était consentante, puis prétendant qu'elle aurait déposé plainte car il avait refusé de lui donner de l'argent. Le faisceau d'indices apparaît donc suffisant pour justifier un maintien en détention.
3. Le recourant conteste ensuite les risques de fuite et de récidive. Il affirme disposer d'un domicile de Suisse et n'avoir aucun intérêt à fuir; il propose de déposer son passeport ou de verser une caution. Le risque de récidive ne saurait s'apprécier à son seul comportement; sa soeur serait disposée à l'accueillir et à l'entretenir.
3.1 Les arguments du recourant (soit de simples affirmations dont la recevabilité apparaît douteuse au regard des exigences posées à l'art. 106 al. 2 LTF) ne permettent pas de remettre en cause l'existence d'un risque de fuite: le recourant est de nationalité marocaine, en situation irrégulière en Suisse; il a lui-même déclaré, en début d'enquête, être sans domicile fixe; séparé de son épouse, ne voyant sa fille qu'occasionnellement, il est également sans emploi régulier. Ses attaches avec la Suisse apparaissent insuffisantes pour prévenir une fuite à l'étranger. Le recourant propose des mesures de substitution, mais l'argument apparaît nouveau et, partant, irrecevable. Le recourant ne s'exprime d'ailleurs pas sur le montant qu'il pourrait offrir comme caution; le dépôt de son passeport n'apparaît pas comme une mesure efficace, et il ne saurait de toute façon pallier le risque de réitération.
3.2 Celui-ci ne peut en effet, lui non plus, être écarté. L'arrêt attaqué apparaît suffisamment motivé sur ce point, puisqu'il rappelle les différentes infractions commises par le recourant dès 1999, y compris en détention, ainsi que ses conditions de vie précaires. Le recourant pourrait facilement être tenté de commettre des infractions pour améliorer son train de vie, quand bien même il serait hébergé par un membre de sa famille.
4. Le recourant invoque enfin les principes de proportionnalité et de célérité. Il relève que sa détention dure depuis plus de treize mois, ce qui serait inadmissible au regard de la peine susceptible d'être prononcée et de la possibilité d'un sursis. Le recourant n'a pas encore été convoqué en jugement, le Procureur général n'ayant toujours pas déposé ses réquisitions. Le recourant relève aussi que le Juge d'instruction aurait été totalement inactif durant plusieurs mois avant de rendre son ordonnance de renvoi le 18 avril 2008. Le rapport de police date du 20 août 2007.
Sans se plaindre formellement d'une violation de son droit d'être entendu, le recourant reproche aux autorités intimées de ne pas avoir pris position sur ces griefs. A lire le recours cantonal, on constate toutefois que le recourant se limitait à relever qu'il se trouvait en détention depuis une année et que l'ordonnance de renvoi n'avait pas encore été rendue; le déroulement de l'instruction n'était pas critiqué en tant que tel, de sorte que la cour cantonale n'était pas tenue de motiver spécifiquement sa décision sur ce point.
4.1 En vertu du principe de la proportionnalité, le prévenu doit être libéré lorsque la durée de son incarcération se rapproche de la peine privative de liberté qui sera éventuellement prononcée. Cette dernière doit être évaluée avec la plus grande prudence, car il faut éviter que le juge du fond ne soit incité à prononcer une peine excessive pour la faire coïncider avec la détention préventive à imputer (ATF 126 I 172 consid. 5a p. 176/177).
Le recourant est notamment prévenu de brigandage et de contrainte sexuelle, soit des infractions pour lesquelles la peine susceptible d'être prononcée est largement supérieure à la durée de la détention préventive déjà subie; les possibilités d'octroi du sursis ne sont pas prises en considération dans l'évaluation de la proportionnalité de la détention préventive (ATF 125 I 60 consid. 3d). Le 16 avril 2008, le recourant a été renvoyé en jugement devant le Tribunal correctionnel de l'arrondissement de l'Est vaudois; il devrait donc pouvoir être jugé dans un délai rapproché, compatible avec le principe de la proportionnalité.
4.2 En vertu du principe de célérité, une incarcération apparaît aussi disproportionnée lors d'un retard injustifié dans le cours de la procédure pénale (ATF 128 I 149 consid. 2.2 p. 151, 125 I 60 consid. 3d p. 64, 124 I 208 consid. 6 p. 215 et les arrêts cités). Toutefois, n'importe quel retard n'est pas suffisant pour justifier l'élargissement du prévenu. Il doit s'agir d'un manquement particulièrement grave, faisant au surplus apparaître que l'autorité de poursuite n'est plus en mesure de conduire la procédure à chef dans un délai raisonnable (ATF 128 I 149 consid. 2.2 p. 151/152). Selon la jurisprudence, après la clôture de l'instruction, le prévenu doit en principe être renvoyé devant le juge du fond dans un délai qui, pour être conforme aux exigences des art. 10 Cst. et 5 par. 3 CEDH, ne devrait pas excéder quelques semaines, voire quelques mois (arrêt 1P.540/2002 du 4 novembre 2002).
En l'occurrence, le rapport de la police de sûreté date du 20 août 2007. Un rapport d'expertise de l'Institut de médecine légale a été déposé le 11 octobre 2007. A la demande du recourant, un complément d'expertise a été demandé le 29 octobre 2007; il a été rendu le 8 février 2008. Le recourant a produit des déterminations le 6 mars 2008. Il a ensuite changé d'avocat, et a obtenu une prolongation au 15 avril 2008 du délai de prochaine clôture. L'ordonnance de renvoi a été rendue le 16 avril 2008. Contrairement à ce que soutient le recourant, les actes d'instruction se sont suivis régulièrement et l'enquête n'a connu aucun temps d'arrêt inadmissible. Dans la mesure où les débats seront prochainement appointés devant l'autorité de jugement, le principe de célérité est respecté.
5. Le recours doit par conséquent être rejeté. Le recourant a demandé l'assistance judiciaire et les conditions en paraissent réunies. Me Olivier Couchepin est désigné comme avocat d'office du recourant, rétribué par la caisse du Tribunal fédéral. Le recourant est dispensé des frais judiciaires (art. 64 LTF).
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. La demande d'assistance judiciaire est admise; Me Olivier Couchepin est désigné comme avocat d'office du recourant et une indemnité de 1000 fr. lui est allouée à titre d'honoraires, à payer par la caisse du Tribunal fédéral; il n'est pas perçu de frais judiciaires.
3. Le présent arrêt est communiqué au mandataire du recourant, au Procureur général et au Tribunal d'accusation du Tribunal cantonal du canton de Vaud.
Lausanne, le 27 juin 2008
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Le Greffier:
Féraud Kurz