Faits: Faits: A. D._, née en 1955 et mère de deux enfants nés en 1984 et en 1985, travaillait depuis le 2 septembre 1996 en qualité d'employée d'entretien à raison de deux heures par jour, cinq jours par semaine. Les 15 juin 1998 et 5 janvier 1999, elle s'est fracturée le fémur gauche, puis le genou gauche. Les suites de ces accidents ont été pris en charge par la Caisse nationale suisse d'assurance en cas d'accidents (CNA), qui a versé des prestations jusqu'au 31 mars 2001. Depuis le 1er avril 2001, cette assurance alloue à l'assurée une rente d'invalidité fondée sur une incapacité de gain de 24 %. Le 15 juin 1999, D._ a présenté une demande de prestations de l'assurance-invalidité tendant à l'octroi d'une rente. Dans le cadre de l'instruction de la demande, l'Office cantonal de l'assurance-invalidité du canton de Genève (ci-après: l'office AI) a requis l'avis du docteur J._, médecin-traitant de l'assurée (rapport du 23 juin 1999) et fait produire le dossier de la CNA. Il a également réalisé une enquête économique sur le ménage (rapport du 12 septembre 2001) et confié au Centre d'observation professionnelle de l'assurance-invalidité (COPAI) de Genève la mise en oeuvre d'une mesure d'observation qui s'est déroulée du 12 août au 8 septembre 2002. Par décision du 13 décembre 2002, l'office AI a rejeté la demande de prestations, motif pris que le degré d'invalidité global de l'assurée, de 25 %, était insuffisant pour ouvrir droit à une rente. En substance, il a considéré que, sans atteinte à la santé, l'assurée exercerait une activité lucrative à raison de 23 % et consacrerait le reste de son temps à la tenue de son ménage. Se fondant sur les résultats de l'enquête économique, il a retenu qu'en raison de l'atteinte à la santé, l'assurée subissait une entrave d'environ 20 % dans ses travaux habituels, soit une invalidité de 15 %, compte tenu de l'exercice d'une activité ménagère à raison de 77 %. Par ailleurs, il a considéré qu'elle était apte à exercer une activité lucrative adaptée, laquelle diminuerait la capacité de gain de 44,89 %, et fixé à 10 % le degré d'invalidité relatif à cette part d'activité (23 x 44,89). Par décision du 13 décembre 2002, l'office AI a rejeté la demande de prestations, motif pris que le degré d'invalidité global de l'assurée, de 25 %, était insuffisant pour ouvrir droit à une rente. En substance, il a considéré que, sans atteinte à la santé, l'assurée exercerait une activité lucrative à raison de 23 % et consacrerait le reste de son temps à la tenue de son ménage. Se fondant sur les résultats de l'enquête économique, il a retenu qu'en raison de l'atteinte à la santé, l'assurée subissait une entrave d'environ 20 % dans ses travaux habituels, soit une invalidité de 15 %, compte tenu de l'exercice d'une activité ménagère à raison de 77 %. Par ailleurs, il a considéré qu'elle était apte à exercer une activité lucrative adaptée, laquelle diminuerait la capacité de gain de 44,89 %, et fixé à 10 % le degré d'invalidité relatif à cette part d'activité (23 x 44,89). B. D._ a déféré la décision de l'office AI à la Commission de recours en matière d'AVS/AI/APG (aujourd'hui: Tribunal cantonal des assurances sociales), en concluant à l'octroi d'une rente entière d'invalidité. A l'appui de son recours, elle a produit un rapport médical du docteur G._ (rapport du 27 janvier 2003). Par jugement du 27 avril 2004, la juridiction cantonale a partiellement admis le recours: elle a confirmé la décision de l'office AI pour la période jusqu'au 31 janvier 2000 (recte: 31 décembre 2000) et l'a annulée pour le surplus, en renvoyant le dossier à l'office AI pour nouveau calcul et nouvelle décision au sens des considérants. B. D._ a déféré la décision de l'office AI à la Commission de recours en matière d'AVS/AI/APG (aujourd'hui: Tribunal cantonal des assurances sociales), en concluant à l'octroi d'une rente entière d'invalidité. A l'appui de son recours, elle a produit un rapport médical du docteur G._ (rapport du 27 janvier 2003). Par jugement du 27 avril 2004, la juridiction cantonale a partiellement admis le recours: elle a confirmé la décision de l'office AI pour la période jusqu'au 31 janvier 2000 (recte: 31 décembre 2000) et l'a annulée pour le surplus, en renvoyant le dossier à l'office AI pour nouveau calcul et nouvelle décision au sens des considérants. C. D._ et l'office AI interjettent l'une et l'autre recours de droit administratif contre ce jugement. Ils demandent tous deux son annulation, la première concluant également à l'octroi d'une rente entière d'invalidité, sous suite de frais et dépens. Elle demande également à bénéficier de l'assistance judiciaire gratuite dans les deux procédures. L'Office fédéral des assurances sociales a renoncé à se déterminer.