Faits: A. X._, ressortissante belge née en 1956, se trouve en détention préventive depuis le 4 juillet 2009, sous l'inculpation de meurtre. Elle aurait tué son concubin en lui donnant un coup de couteau au thorax. Présentant un taux d'alcool de 1,47o/oo au moment des faits, elle prétend ne se souvenir de rien. B. Par ordonnance du 31 mars 2010, le Juge d'instruction de l'arrondissement de Lausanne a refusé la mise en liberté de la prévenue, considérant qu'il existait un danger pour la sécurité et l'ordre publics, ainsi qu'un risque de fuite ou de passage dans la clandestinité. Par arrêt du 17 mai 2010, le Tribunal d'accusation du Tribunal cantonal vaudois a confirmé cette ordonnance. Il a retenu l'existence de charges suffisantes et confirmé le risque de récidive: selon l'expertise psychiatrique, les faits reprochés, supposés avérés, traduiraient un potentiel de violence que la prévenue aurait de la peine à reconnaître; en cas de consommation d'alcool et dans une situation semblable, un risque de récidive était non négligeable. Le risque de fuite a lui aussi été confirmé, compte tenu des attaches de la prévenue avec la Belgique, de l'absence d'activité professionnelle et de la gravité des faits. Une mise en liberté apparaîtrait aussi choquante, et présenterait un danger pour l'ordre public. La durée de la détention respectait le principe de la proportionnalité. C. Par acte du 21 juin 2010, X._ forme un recours en matière pénale. Elle demande la réforme de l'arrêt cantonal en ce sens que sa mise en liberté est ordonnée. Subsidiairement, elle conclut au renvoi de la cause au Tribunal d'accusation pour nouvelle décision au sens des considérants. Elle a par la suite demandé l'assistance judiciaire. Le Tribunal d'accusation se réfère à son arrêt. Le Procureur général conclut au rejet du recours. L'intimée Y._, épouse de la victime, conclut au rejet du recours. La recourante a eu l'occasion de répliquer. 