Faits :
A.
Par jugement du 20 août 2020, le Tribunal de police de la République et canton de Genève a condamné A.A._ pour enlèvement de mineur (<ref-law>) à une peine pécuniaire de 60 jours-amende, à 10 fr., avec sursis pendant 3 ans. Il l'a par ailleurs acquittée des chefs de violation du devoir d'assistance ou d'éducation (<ref-law>) et de fausse déclaration d'une partie en justice (<ref-law>). B.A._ a été débouté de ses conclusions en réparation du tort moral et a été renvoyé à agir au civil s'agissant de la réparation de son éventuel dommage matériel.
B.
Statuant par arrêt du 17 mars 2021, la Chambre pénale d'appel et de révision de la Cour de justice genevoise a partiellement admis l'appel formé par A.A._ contre le jugement du 20 août 2020, tout en rejetant par ailleurs, dans la mesure de sa recevabilité, celui formé par B.A._. Le jugement a été réformé en ce sens que A.A._ était exemptée de toute peine. Il a été confirmé pour le surplus.
En substance, la cour cantonale a retenu les faits suivants.
B.a. A.A._, ressortissante égyptienne, et B.A._, ressortissant suisse et égyptien, se sont mariés le 13 octobre 2012, au Caire (Egypte). Deux enfants sont nés de leur union, soit C.A._, le [...] 2014, et D.A._, le [...] 2017. Après avoir vécu à U._, la famille s'est installée en France voisine, d'abord à V._ dès le mois de septembre 2016, puis à W._ dès le mois de mars 2018. L'enfant C.A._, qui souffrait d'un retard dans l'apprentissage du langage, a été scolarisé à ces endroits depuis ses trois ans.
Les époux ont vécu séparés depuis le 27 février 2019. B.A._ a conservé le logement de W._, alors que A.A._ s'est installée temporairement dans l'appartement de sa belle-mère, à U._. Durant les premières semaines, les enfants sont restés avec leur père en France, ayant été gardés par une nourrice. Ils ont ensuite été hébergés par leur mère à U._, jusqu'au 18 mars 2019.
B.b. Le 18 mars 2019, A.A._ et B.A._ ont pris part, à Genève, à un entretien avec une assistante sociale du Service de protection des mineurs (SPMi), notamment dans le but de discuter des modalités de la garde des enfants. Aucun accord n'a été formalisé à cette occasion.
Le même jour, A.A._ a déposé, auprès du Tribunal civil de première instance de la République et canton de Genève, une requête de mesures protectrices de l'union conjugale, assortie d'une demande de mesures superprovisionnelles. Invoquant des violences qu'elle avait subies de la part de son époux, elle a notamment sollicité que la garde des enfants lui soit attribuée et que B.A._ soit astreint à lui verser une contribution d'entretien. Elle a par ailleurs conclu à ce que l'autorité parentale demeure conjointe.
Statuant le même jour sur mesures superprovisionnelles, le tribunal a astreint B.A._ à contribuer à l'entretien de sa famille par le versement de pensions alimentaires. Il a rejeté la requête pour le surplus.
B.c. Depuis le 18 mars 2019, A.A._ a refusé d'amener les enfants C.A._ et D.A._ chez leur père en France. En outre, à partir de cette date, elle n'a plus amené son fils C.A._ dans son école en France, ni à ses activités extra-scolaires. Elle l'a en revanche inscrit à la halte-jeux de X._, à U._, que l'enfant a fréquentée régulièrement depuis le 26 mars 2019. Elle l'a également inscrit à l'école primaire en Suisse en vue de la rentrée scolaire 2019.
B.d. Par demande adressée le 29 mars 2019 à la Chambre civile de la Cour de justice genevoise, B.A._ a sollicité le retour des enfants en France, en référence à l'art. 7 al. 1 de la loi fédérale sur l'enlèvement international d'enfants et les Conventions de La Haye sur la protection des enfants et des adultes (LF-EEA; RS 221.222.32). Le 16 avril 2019, il a en outre déposé une plainte pénale contre A.A._ auprès du Ministère public genevois, se prévalant notamment de l'<ref-law>.
B.A._ a pu exercer un droit de visite sur ses enfants le 18 avril 2019, durant quelques heures, à U._, puis plus régulièrement en France à partir du premier week-end du mois de mai 2019.
B.e. Le 30 avril 2019, l'autorité désignée en France pour la mise en oeuvre de la Convention de La Haye sur les aspects civils de l'enlèvement international d'enfants du 25 octobre 1980 (CLaH 80; RS 0.211.230.02) - soit en l'occurrence le Ministère français de la Justice, par son Bureau du droit de l'Union, du droit international privé et de l'entraide civile - a attesté du caractère illicite de la rétention, en Suisse depuis le 18 mars 2019, des enfants C.A._ et D.A._ par leur mère A.A._. Par arrêt du 27 août 2019, la Chambre civile de la Cour de justice genevoise, se fondant notamment sur cette attestation, a ordonné le retour immédiat des deux enfants en France.
A cette suite, les enfants sont finalement retournés vivre chez leur père, en France.
C.
A.A._ forme un recours en matière pénale au Tribunal fédéral contre l'arrêt du 17 mars 2021. Elle conclut, avec suite de frais et dépens, principalement à son acquittement. Subsidiairement, elle conclut à l'annulation de l'arrêt et au renvoi de la cause à la cour cantonale pour nouvelle décision. Elle sollicite l'octroi de l'assistance judiciaire.

Considérant en droit :
1.
La recourante invoque en premier lieu des violations des art. 3 et 8 CP. Elle fait valoir que, dans la mesure où il lui est reproché, sous l'angle de l'<ref-law>, d'avoir refusé de ramener ses enfants au domicile français de leur père, c'est bien en France qu'elle aurait dû agir et que l'infraction doit donc être réputée avoir été commise. Elle en déduit que les autorités suisses n'étaient pas compétentes pour la poursuivre pénalement.
1.1. L'<ref-law> dispose que celui qui aura soustrait ou refusé de remettre un mineur au détenteur du droit de déterminer le lieu de résidence sera, sur plainte, puni d'une peine privative de liberté de trois ans au plus ou d'une peine pécuniaire.
Le bien juridique protégé par l'<ref-law> est le droit de déterminer le lieu de résidence en tant que composante de l'autorité parentale. Cette disposition protège ainsi la personne qui a le droit de décider du lieu de résidence de l'enfant (<ref-ruling> consid. 5.3.1 p. 210; arrêt 6B_1277/2020 du 10 juin 2021 consid. 2.1).
1.2. Aux termes de l'<ref-law>, le CP est applicable à quiconque commet un crime ou un délit en Suisse. Un crime ou un délit est réputé commis tant au lieu où l'auteur a agi ou aurait dû agir qu'au lieu où le résultat s'est produit (<ref-law>).
Le lieu où l'auteur a agi ou aurait dû agir (<ref-law>) se définit comme le lieu où l'auteur est physiquement présent lorsqu'il réalise l'un des éléments constitutifs de l'infraction considérée (<ref-ruling> consid. 1c/aa). S'agissant en particulier du " lieu où l'auteur aurait dû agir ", cette notion, se rapportant aux infractions d'omission, comprend d'une manière générale tout endroit où se trouve l'auteur tant et aussi longtemps que l'obligation d'agir perdure et qu'il persiste à ne pas s'y soumettre, quoiqu'il en ait matériellement la possibilité, de même que, le cas échéant, le lieu où l'auteur est censé se rendre pour accomplir son devoir d'agir (<ref-ruling> consid. 5.2 et les références citées; POPP/KESHELAVA, in Basler Kommentar, Strafrecht I, 4e éd. 2019, n° 11 ad <ref-law>; DUPUIS ET AL., Petit commentaire, Code pénal, 2e éd. 2017, n° 9 ad <ref-law>).
Pour que l'infraction soit punissable en Suisse, il faut par ailleurs que l'auteur réalise l'un des actes constitutifs sur le territoire suisse. En revanche, le lieu où il décide de commettre l'infraction ou le lieu où il réalise les actes préparatoires (non punissables) ne sont pas pertinents. En d'autres termes, la notion d'acte contenue à l'<ref-law> doit être appréciée exclusivement au regard des éléments constitutifs décrits dans la norme pénale spéciale (cf. <ref-ruling> consid. 2.7.2 et les références citées).
1.3. Se référant à l'arrêt publié aux <ref-ruling>, la cour cantonale a considéré que l'infraction reprochée à la recourante avait en l'espèce été commise en Suisse dès lors que les enfants y séjournaient de manière effective au moment des faits (cf. arrêt attaqué, consid. 2.1.1 et 2.1.2 p. 10).
Cependant, ce critère de rattachement, qui se rapporte exclusivement au lieu de situation des enfants et donc au lieu de survenance du résultat potentiel de l'infraction, n'est plus en adéquation avec la jurisprudence rendue ultérieurement au sujet de la localisation des délits formels. Dans un arrêt publié aux <ref-ruling>, le Tribunal fédéral avait en effet considéré que le critère du lieu du résultat de l'infraction n'était pas susceptible d'entrer en considération s'agissant des délits formels, lesquels se caractérisent en ceci que seul le comportement de l'auteur - et non l'avènement d'un résultat - est à même de mettre en danger ou de léser le bien juridique protégé. Or, l'infraction décrite à l'<ref-law> consacre précisément un tel délit formel dans la mesure où le bien juridiquement protégé - en l'occurrence le droit de déterminer le lieu de résidence en tant que composante de l'autorité parentale (arrêt 6B_1277/2020 du 10 juin 2021 consid. 2.1) - est en soi déjà lésé par la soustraction ou le refus de remettre visé par l'énoncé légal (cf. BERTRAND SAUTEREL, in Commentaire romand, Code pénal II, 2017, n° 31 ad <ref-law>).
1.4. Dans sa jurisprudence ultérieure, le Tribunal fédéral a estimé que l'infraction réprimée à l'<ref-law> était localisable à l'endroit où l'auteur était juridiquement obligé de remettre le mineur en question à l'ayant-droit (<ref-ruling> consid. 5.2; <ref-ruling> consid. 2c/cc). Les états de faits relatifs à ces arrêts se rapportaient à la situation par laquelle, après un séjour à l'étranger de l'un des parents avec son enfant, ce parent ne l'avait pas remis à l'autre parent, domicilié en Suisse. L'obligation de remettre l'enfant devant dès lors être accomplie en Suisse, au domicile du parent lésé, l'infraction y avait été réputée avoir été commise.
Pour autant, le Tribunal fédéral n'a pas définitivement exclu la prise en compte d'autres critères de rattachement territorial dans le contexte de l'<ref-law>. Rien ne s'oppose en particulier à ce que l'approche décrite dans les deux arrêts précités se combine, d'une manière alternative, avec les autres critères généraux de rattachement des infractions d'omission, tel que celui du lieu où se trouve l'auteur tant que perdure l'obligation d'agir et qu'il persiste à ne pas s'y soumettre. Il doit ainsi être possible de poursuivre tant celui qui, résidant à l'étranger, n'accomplit pas un acte qu'il est censé accomplir en Suisse, que quiconque, se trouvant en Suisse, omet d'accomplir un acte qu'il doit accomplir à l'étranger (cf. en ce sens: ALEXANDRE DYENS, Territorialité et ubiquité en droit pénal international suisse, 2014, p. 178 s. n° 594).
La prise en compte alternative du lieu où se trouve l'auteur ou de celui où l'obligation devait être exécutée présente l'avantage de prévenir le risque de conflits négatifs de compétence que serait susceptible d'induire une approche exclusive de la localisation de l'infraction, ceci de manière conforme aux exigences jurisprudentielles imposant de considérer cet aspect (<ref-ruling> consid. 6.3; arrêt 6B_266/2020 du 27 mai 2020 consid. 2.2; DYENS, ibidem). Une telle solution a en outre le mérite d'être cohérente avec celle prévalant en lien avec l'infraction réprimée à l'<ref-law> (violation d'une obligation d'entretien) - soit également au Titre 6 du CP (crimes ou délits contre la famille) -, la jurisprudence y admettant un rattachement territorial de l'infraction tant au lieu où l'obligation devait être exécutée (soit en principe au domicile du bénéficiaire de l'entretien; cf. <ref-law>; <ref-ruling> consid. 1), qu'au lieu de résidence suisse du débiteur de l'entretien au moment où il a manqué à son devoir (<ref-ruling> consid. 1; plus récemment: arrêt 6B_532/2018 du 19 juillet 2019 consid. 1.3 et 1.4; TRECHSEL/ARNAIZ, in Schweizerisches Strafgesetzbuch, Praxiskommentar, 4e éd. 2021, n° 20 ad <ref-law>).
1.5. En l'espèce, l'infraction d'omission reprochée à la recourante est susceptible d'être localisée en France, s'agissant de l'État dans lequel elle aurait dû se rendre, précisément au domicile de son époux, pour se soumettre à l'obligation de lui remettre leurs enfants.
Cela n'exclut cependant pas de prendre également en considération l'endroit où se trouvait la recourante au moment où elle aurait omis de se soumettre à l'obligation d'agir. Ainsi en l'occurrence, il apparaît que c'est bien par le fait d'être restée en Suisse avec ses enfants, que la recourante aurait manifesté, par de tels actes concluants, son refus de se soumettre à l'obligation de remettre ses enfants à leur père.
Il faut dès lors considérer que ce refus, consacrant un élément constitutif de l'infraction d'omission décrite à l'<ref-law>, est susceptible d'avoir été réalisé en Suisse. Il y existe donc bien une circonstance de rattachement permettant, au regard des art. 3 et 8 CP, l'application du Code pénal suisse et justifiant à cet égard la compétence territoriale des autorités pénales suisses, en particulier de celles du canton de Genève. Le grief doit ainsi être rejeté.
2.
La recourante se plaint à titre subsidiaire d'un établissement arbitraire des faits ainsi que d'une violation de l'<ref-law>.
2.1. Le Tribunal fédéral n'est pas une autorité d'appel, auprès de laquelle les faits pourraient être rediscutés librement. Il est lié par les constatations de fait de la décision entreprise (<ref-law>), à moins qu'elles n'aient été établies en violation du droit ou de manière manifestement inexacte au sens des art. 97 al. 1 et 105 al. 2 LTF, à savoir, pour l'essentiel, de façon arbitraire au sens de l'art. 9 Cst. Une décision n'est pas arbitraire du seul fait qu'elle apparaît discutable ou même critiquable; il faut qu'elle soit manifestement insoutenable et cela non seulement dans sa motivation mais aussi dans son résultat (<ref-ruling> consid. 1.1; <ref-ruling> consid. 1.1; sur la notion d'arbitraire v. <ref-ruling> consid. 2.3.1). Le Tribunal fédéral n'entre en matière sur les moyens fondés sur la violation de droits fondamentaux, dont l'interdiction de l'arbitraire, que s'ils ont été invoqués et motivés de manière précise (<ref-law>; ATF <ref-ruling> consid. 1.1). Les critiques de nature appellatoire sont irrecevables (<ref-ruling> consid. 1.1).
2.2. Pour que l'infraction d'enlèvement de mineur au sens de l'<ref-law> soit consommée, il faut que l'auteur empêche le détenteur du droit de déterminer le lieu de résidence de décider, ainsi que la loi l'y autorise, du sort de l'enfant. Il faut entendre par soustraction ou refus de remettre, que la personne mineure (avec ou sans son consentement) est éloignée ou tenue éloignée du lieu de séjour ou de placement choisi par le ou les détenteurs du droit de déterminer son lieu de résidence, la séparation spatiale ayant pour effet d'empêcher l'exercice de ce droit (arrêts 6B_1073/2018 du 23 août 2019 consid. 6.1 et les références citées; 6B_533/2017 du 6 septembre 2017 consid. 3.2). Sur le plan subjectif, l'infraction est intentionnelle, le dol éventuel suffit. L'intention doit porter sur la connaissance de la qualité de mineur de la personne enlevée et sur le fait d'empêcher l'exercice du droit de déterminer le lieu de résidence (arrêts 6B_1073/2018 du 23 août 2019 consid. 6.1; 6B_797/2016 du 15 août 2017 consid. 2.1).
Le titulaire du droit de déterminer le lieu de résidence, bien juridique protégé par l'<ref-law>, doit être défini par le droit civil (<ref-ruling> consid. 5.3.1; arrêts 6B_1277/2020 du 10 juin 2021 consid. 2.1; 6B_789/2017 du 25 septembre 2017 consid. 1.2 et les références citées). En vertu de l'<ref-law>, le droit de déterminer le lieu de résidence de l'enfant est une composante de l'autorité parentale, laquelle est en principe attribuée conjointement aux deux parents (<ref-law>; <ref-ruling> consid. 3; <ref-ruling> consid. 3.3; arrêt 5A_194/2020 du 5 novembre 2020 consid. 3.1). Un enlèvement au sens de l'<ref-law> peut être commis par l'un des deux parents s'il n'exerce pas seul l'autorité parentale, respectivement le droit de déterminer le lieu de résidence (arrêts 6B_1277/2020 du 10 juin 2021 consid. 2.1; 6B_1073/2018 du 23 août 2019 consid. 6.1 et les références citées; 6B_123/2014 du 2 décembre 2014 consid. 3.3 non publié in <ref-ruling>).
2.3. La cour cantonale a tenu pour établi que, jusqu'à leur séparation le 27 février 2019, la recourante et son époux avaient vécu à W._ (France) avec leurs enfants C.A._ et D.A._. Par la suite, à partir du 18 mars 2019 et jusqu'au début du mois de mai 2019, la recourante s'était installée à U._ avec les enfants, refusant durant cette période de les remettre à leur père, resté pour sa part en France, cela alors qu'aucune décision judiciaire portant sur une modification du lieu de résidence des enfants n'avait été rendue (cf. arrêt attaqué, consid. 3.4 p. 13 s.).
2.4. La recourante reproche à la cour cantonale d'avoir omis de prendre en considération qu'elle avait déposé, le jour même de son arrivée en Suisse avec ses enfants (18 mars 2019), une requête de mesures protectrices de l'union conjugale auprès du Tribunal civil genevois de première instance visant à l'attribution de la garde en sa faveur et à l'instauration d'un droit de visite au bénéfice de son époux, avec lequel elle exerçait conjointement l'autorité parentale. Elle entend en déduire que, dès le dépôt de cette requête, le droit de déterminer le lieu de résidence n'appartenait plus à son époux, ni à elle, mais à l'autorité judiciaire saisie.
Ce faisant, la recourante ne prétend pas qu'à un moment ou à un autre, le juge saisi de sa requête lui avait donné une suite favorable en tant que celle-ci portait sur l'attribution exclusive du droit de déterminer le lieu de résidence des enfants. Elle ne conteste par ailleurs nullement les constats de la cour cantonale selon lesquels, avant son départ à U._ avec les enfants, leur résidence habituelle se trouvait en France, auprès de leur père, qui y exerçait le droit de garde de manière effective et licite au regard du droit français, ce qui est seul déterminant en l'occurrence. On ne voit pas au demeurant que de tels constats seraient empreints d'arbitraire, dès lors qu'ils se fondent notamment sur l'attestation établie, en vertu des art. 3 et 15 CLaH 80, par l'autorité française compétente, sur laquelle la Chambre civile de la Cour de justice genevoise s'est également appuyée, dans son arrêt du 27 août 2019, au moment de constater le caractère illicite du déplacement des enfants en Suisse et d'ordonner leur retour en France en application des art. 8 ss CLaH 80.
2.5. La recourante ne conteste par ailleurs pas avoir gardé ses enfants auprès d'elle en Suisse, alors qu'elle avait su que son époux avait initié, dès le 29 mars 2019, une procédure en retour d'enfants. Elle ne pouvait ainsi ignorer qu'elle tenait ses enfants éloignés de leur résidence habituelle et qu'elle empêchait de la sorte l'exercice, par son époux, du droit de déterminer leur lieu de résidence.
La recourante ayant ainsi agi, à tout le moins, par dol éventuel, sa condamnation pour enlèvement de mineur (<ref-law>) ne viole pas le droit fédéral.
3.
Au vu de ce qui précède, le recours doit être rejeté. Comme il était dénué de chances de succès, la demande d'assistance judiciaire doit être rejetée (<ref-law>) et la recourante, qui succombe, supportera les frais judiciaires (<ref-law>), dont le montant sera toutefois fixé en tenant compte de sa situation financière qui n'apparaît pas favorable.

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté.
2.
La demande d'assistance judiciaire est rejetée.
3.
Les frais judiciaires, arrêtés à 1'200 fr., sont mis à la charge de la recourante.
4.
Le présent arrêt est communiqué aux parties et à la Cour de justice de la République et canton de Genève, Chambre pénale d'appel et de révision.
Lausanne, le 5 janvier 2022
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Juge présidant: Denys
Le Greffier : Tinguely