Offline Memrise-like alternative Memento

This post was flagged by the community and is temporarily hidden.

3 Likes

I think this is amazing work, and the most serious attempt I know of so far to give us a way to actually continue to use and develop our Memrise courses in the years since Memrise turned on the community platform and degraded and neglected it. I don’t know if you saw my post about this that Memrise hid from the forum (why? because they didn’t like what I was saying?), but you made the most serious stab at it I’ve seen so far: Memrise is dead. Let's get together and build an alternative

Unfortunately I cannot try what you made yet, since I don’t use Windows PCs at all, but if you do make a version for Mac I’d like to try it.

Even though it’s offline, it sounds like the course files could be saved in a public repo, so if this thing gets some adoption we could create a simple course sharing hub based on it.

And if nothing else, this may finally provide an effective way to actually make full backups of courses I spent literally thousands of hours making. That would be huge for me, and I think likely for some other people.

In the courses I created, Mems (which you refer to as mnemonics) were sometimes central to the course itself. I seeded the course with Mems and considered it a core part of what I was creating. Without those Mems, I think my courses would be significantly inferior, and of course I wouldn’t consider a backup without my Mems to be a real backup of the course. So I really hope you do add that capability, including the ability to export Mems from a Memrise course if that’s possible. You wrote, “And even if I implement mnemonic support, since the app operates offline, the user would have to make their own” - but that’s no more true for Mems than it is for the courses themselves. They’d just be more data that you could store with the course, and share with others in the same way.

You don’t mention sound samples, but your screenshots show there is audio as well as images. So I think your software does download all of the images and audio samples with a course’s data, and can store those?

I’m also curious about whether it can handle alternative columns and alternative values within a column in the same ways as Memrise used to, but I guess I can find out if you ever make a Mac version.

P.S. Remember how Memrise deleted their old course forums? And hid my post about Memrise community platform dying, although they didn’t delete it? You put a lot of work into this post, I suggest you post an identical one somewhere else too in case Memrise decides to delete this.

Actually no, I don’t think I’ve ever seen that post. I just had some free time recently and a desire to make an offline alternative to Memrise so Memento was born.

While it is fairly simple to export the program to MacOS or iOS without reprogramming almost anything, I cannot do that unfortunately because I do not have a macbook or access to one (or other computers that run MacOS). However, since the program is open-source, anyone with a Mac could do it themselves without any programming. I will include compile instructions for Windows, Android and Linux, though I can’t do the same for MacOS because I haven’t and can’t do it myself, but I will point to where you can find help for that

Yes, something like that would be as simple as hosting the files somewhere online.

The program itself does not do this. I wrote a separate Python script which accepts a link to a Memrise course and scrapes almost everything from it - the title description, image, etc. Then it goes through all its levels and scrapes the HTML to find the item IDs. Afterwards it finds the course’s database and runs each item through the Memrise API to download all available data for it, including images, audio and alternative answers. Afterwards it outputs one seedbox.json file which contains all item IDs, their columns, types, text data and paths to images and audio which are stored as separate files in the assets folder. Afterwards it outputs a separate json or markdown file for each level to recreate the level structure and contents as they are seen in the Memrise course. Finally you can just copy-paste the new folder in the Memento courses directory and you’re done. The Python script automatically exports and structures everything in the Memento format.
I have been trying to import this python script in the program itself without any success so far. But even if I fail, it’s still perfectly usable as a standalone script as long as you have Python installed.

Yes it does support extra columns and alternative answers - you can see that in the screenshots of the “Who composed me” course. In the preview page of Fryderyk Chopin, the smaller text under the “Artist” column is alternative answers which will also be accepted on typing/tapping tests. Extra columns like the “Work” column are also downloaded even though they do not show up in tests. As of right now, I can say that everything from a course is saved (it even works on courses with multiple databases), except mems.

Anyway, thanks for your kind words. I haven’t ever used mems personally, but if they really are such a big deal for some, I’ll investigate how I might implement them (and download them from a Memrise course if possible). I think I’ll upload the program to either github or gitlab in the coming days and then you can try it out for yourself.

EDIT: I forgot to mention @cos, could you send me some links to example levels that have varied types of mems so I can see how they look?

1 Like

That is quite a task you set yourself with this.

I’m especially interested in the script.

Would it download all of the audio and image files? (there are two pictures of Chopin in the music course you used as an example)

I have used a script before to back-up a course but the script in question only downloads the words and definitions and seems to be limited in the number of records. Would your script be able to cope with really large courses?

1 Like

Yes, it downloads everything (that I know of) except for mems right now, but I think I’ll look into mems soon. I’ve already used it to download entire courses like these ones

As far as I’ve tested it, it handles courses of any size (except for maybe courses that have just a single level). During runtime it may take up between 30-50 MB of your ram.

1 Like

Sure, look at this level in my Hebrew course where I made mems as part of the course. I didn’t quite finish, I was still working on this course when Memrise went sour and I mostly stopped, but I did get pretty far on this level, and I consider the mems I made to be part of the course content.

Ok I can see what a Mem looks like. Is it possible for a Mem to be an imagine, audio or only text?

1 Like

If you go through that level’s review, you can see that I made some image mems.

I do not believe that it was possible to add audio to mems.

Hi @mementoseeds, you have been busy!
It looks very interesting.

I like many of your goals (especially as a back-up) and ideas.

I’ve only just seen this thread and have only glanced at it, so I don’t know if these thoughts have been considered:

I do NOT need any replies.

  1. as it’s off line, how would users know and update it if the MemRise version was updated (or would it then diverge)?

  2. for an App version, would it be stored on a memory card (rather than on limited internal phone memory)?

  3. can anyone modify their own stored version?

  4. will existing creators and contributors be informed?

  5. will Mems and notes be possible?

  6. will you have scores and achievement landmarks?

  7. will you have a landscape and planting theme?

  8. will it store multiple images?

  9. and alternative answers?

  10. will it show links to the existing [Course Forums]?

  11. will your database course version update when the MemRise version is updated? Although users who have already downloaded a course may have an out of date version.

  12. will it be easy to create and upload an original course?

  13. will all courses in a language be shown?

  14. will you have a way to show popularity (including current use) and perhaps endorsement?

  15. will it be possible to identify courses with audio and say single or multiple images (or audio)?

  16. will you have alternative colour schemes (eg personal preference or for visually impaired people)?

Forgive me if many of the above points have already been considered.

All the best. Keep us informed.

The app is not meant to have a constant connection to the existing Memrise. I’ve simply provided a script to download existing Memrise courses so that you don’t have to re-create them from scratch. With that in mind

  1. Once you download a course, that’s it. There’s no connection to where it came from. So if a course you downloaded happens to be updated in Memrise and want those changes, you would have to re-download it because they are separate things.
  2. You can store the course files anywhere the phone has access to
  3. Yes, that’s the idea - anyone can edit anything for any reason
  4. I’m not sure how that would work. Honestly so far I’ve been operating under the idea that since courses are public accessible, it’s okay to download anything from them that is publicly accessible. You could go ahead and inform the original creator for their consent, but having their consent or not does not change what is download-able and what is not unless they hide the course from everyone.
  5. I’m looking into mems, idk what notes are.
  6. Scores maybe, achievements not really for now since the whole program is for your own personal education and is not shared with anyone online anyway
  7. I’m not sure if that’s allowed for copyright reasons
  8. It already has support for multiple columns of any type
  9. already done
  10. No - once a course is downloaded they are separate entities
  11. No
  12. I’ve not worked on course creation/editing yet, but it’s a planned feature (though for now you can create courses manually with any text editor)
  13. Do you mean sorting courses by category? I’ll look into that eventually
  14. I don’t know what you mean by endorsement. Everything is offline and by default nothing is built-in. You only have what you create or download elsewhere so there’s no point for popularity
  15. Do you mean testing with images or audio? You can already do that - see the screenshots.
  16. I have no plans for that at the moment, but I’ll probably include settings for changing colors eventually
1 Like

Hi @mementoseeds, many thanks for your (very quick) detailed reply.

I didn’t expect you to reply, I was just sharing thoughts off the top of my head and since reading the above, I saw you had addressed many of my points and some were raised by others. I’ve also understand your ethos, so some of my points are irrelevant.

I’m impressed with your thoroughness and care.

  1. I presume that a user can always download a fresh copy if they wish, but as one can manually update a downloaded copy, there is probably no need.

Personally I agree with comments above that it’s a great way to back-up one’s own courses (or those we are supporting).

  1. If I download a course, I assume it will be in a general database that others can access (and vice versa)?

I see Memrise is dead. Let's get together and build an alternative - #264 by mementoseeds

that is referred to above, is unlisted - ie not visible (except, presumably to those who contributed).

“Database” might be a bit of an over-exaggeration. It’s literally a plaintext json file that stores the item IDs, text content and file paths that point to non-text data like images or audio. So yes, anyone can edit a course in any way with a simple text editor once it is downloaded.
18. No, it’s a local file. I suppose you could organize sharing with others though by hosting downloaded courses in some kinda online repository. I haven’t thought that far ahead though.

1 Like

I understand now, when you said …

I’ve already used it to download entire courses like these ones …

You mean you tried it for yourself with those courses, not that they are downloaded for general access.

So this keeps it private.

As has been said by several of us, it sounds a great way to back-up ‘our’ courses which we can’t do from within MemRise. But I hope it’s simple as I don’t understand Scrips so I hope it’s automatic from your web-site.

I took a slight break recently, but here’s my initial attempt at mnemonics.

The design is a bit simplistic, but I may improve it eventually. All mnemonics show up for a certain item in its preview page at the bottom where they can be scrolled horizontally

Here’s an example of two mnemonics from your course @cos. One is text only, the other is a text plus image. If there is both text and an image, a small separator divides them. The bigger line at the bottom is a horizontal scrollbar that notifies you that you can scroll horizontally to see more mnemonics. You can click on any of them to set it as your mnemonic for a certain item. Afterwards it’s gonna show up in tests like this


Or like this

Also here’s one which is only an image

What are your thoughts?

Ok, here it is - the first public release.

Hopefully I haven’t missed any last minute bugs.

I’ve included a Windows, Android and Linux version in the releases page. I would have included a Mac OS X and iOS version too, but I don’t have any Mac computers that can export the project to OS X or iOS.

This is something I built mostly for myself, but I hope it may be useful for others too.

Just wondered why this long first post has been hidden?

Is it because it’s not relevant to MemRise?

Personally I like the idea of being able to download a course, something I can’t do in MemRise currently.

1 Like

It was flagged as spam. To be fair I don’t blame them. In hindsight the General Discussion forum might have been the wrong place to post this in because it’s not directly related to Memrise and sounds a bit promotional.

Thanks for adding mems! Sorry I haven’t had a chance to try this out yet, as it has been a busy couple of weeks, but I am going to try to find time soon.

I get the impression that Memrise likes to hide things that are critical of Memrise, since it has happened to my posts too. But maybe someone can tag one of the current maintainers of this forum, if you know who they are, and get an actual explanation?