The way to share data across pages is global variables. So your basic approach would be to assign values to one or more global variables when an article is bookmarked. Then, when your bookmarks page loads you can use the repeater’s OnItemLoad to assign specific rows to show as “bookmarked” --or alternatively, the OnPageLoad could add rows for each bookmarked item/value, or use filters to show a hidden row.
For instance, you could use one Global Variable, like “Bookmarks” to keep track of a list of which articles are bookmarked, perhaps using their title or a representative number–some kind of signifier. I presume each article is on its own page with some kind of button/icon/link affordance to flag it as “bookmarked.” The OnClick event could add the signifier to the end of the Bookmarks value ( something like, set value of Bookmarks to "[[Bookmarks]], [[This.text]]
). Then in your bookmarks page you could parse that Bookmarks variable with subsequent substring() or slice() statements using the comma (or any character that would not appear in your signifiers) to extract the signifiers and update your repeater list. Another method would be to have a different Case for each possible bookmark and just search the list (something like, If [[Bookmarks]] contains "1" remove filter "bm1" from MyRepeater
) Or, you could set a reasonable limit for the number of bookmarks in your prototype. Perhaps 2 or 3 would suffice to show a proof of concept, or maybe you need 10 to fully test this out with users. You could set up 10 global variables, such as B0, B1, B2, etc. which could make it a lot easier to set and track which articles have been bookmarked.
I would recommend you use values as short as possible in your global variable(s) to keep things efficient and more reliable when passing data across pages. If the article details you want to show in the bookmarks repeater rows are extensive, say perhaps you want to show the title, author, journal, publication number, an abstract and an image in each repeater row of your bookmarks list, you don’t have to pass all this data from one page to the next, just a pointer or reference number (what I’m calling a “signifier”) which can be a single number or short string. On your bookmarks page you would have all the “article details” info needed (copied from your articles’ pages) for each possible article in your prototype. In fact, I would recommend you create your repeater with all possible bookmarks, so if you have 10 articles in your prototype, you would have 10 rows in your repeater all ready to go. To start with no bookmarks, hide all the rows in your repeater with a filter, and as bookmarks are added, show the appropriate rows. Perhaps you could have a different filter for each row and just remove that filter if your global variable includes that article or row number.
If you post your .rp file or a basic version of it, I’d be happy to show some solutions for this based on how you are representing your articles and repeaters.