Best solution for uploading images (user avatars)?

Hi guys,

I’d love to give my users the option to upload user-images/avatars
and I am searching for an easy solution with the following features:

  • a secure image-upload (S3 would be good)
  • a “show Initials if NO image is available”-fallback
  • the ability to load images from facebook / twitter, with manual text-fields for the user to enter their twitter#, or facebook-id. On accounts I am just using accounts-password, so I need manual text-fields.

So far https://github.com/okgrow/meteor-image-upload/ looks like the best solution out there - altough it is NOT actively supported anymore and based on CollectionFS (which afaik is also running out of maintainers).

https://github.com/meteor-utilities/avatar/ also looks cool, but afaik does NOT support to switch off GRAVATAR-option for privacy reasons.

Do you guys have some tips?

Meteor-Files is the current best option with Meteor. Their wiki has a guide for using S3. Other things you’re gonna have to implement yourself with most file upload solutions.

1 Like

@asad: Thanks for the tip!!! Do you mean https://github.com/VeliovGroup/Meteor-Files?

Update: Today I checked out S3 and gave up due to configuration hassles. I was NOT able to quickly configure S3 in a way that makes me feel good putting out the api-keys. Furthermore I realized that it would good to have the option to only PUBLISH images to logged in users… so right now I am playing around with https://github.com/vsivsi/meteor-file-collection, but it lacks autoform support.

OK, I guess I’ll take a step back and play around with “Meteor-Files” (https://github.com/VeliovGroup/Meteor-Files).

Can you please confirm that it is the package you mean? Have you made good experiences with GridFS?

I’ve used slingshot by edgee successfully a couple of times in projects. i recommend it if you’re storing content in Amazon.

Yes, that is the one I mean. I decided to go with a Dropzone+Express based solution for handling uploads, but it was easy since the app already used a microservice approach. Might be something you’d wanna consider, since I found all the Meteor-based solutions lacking in one way or another.

Hi guys,

after successully implementing image-upload using GridFS I want to give future readers the following summary:

  1. NOTE that galaxy does NOT have persistent storage, so when uploading images you need to have an external storage, like GridFS, S3, etc
  2. I did NOT have much luck with https://github.com/VeliovGroup/Meteor-Files package. In my eyes GridFS implementation is NOT implemented well. There is a lot of manual work you have to do and there is missing a REAL drop-in API to get GridFS working out of the box. Still thanks again for the author for being really responsive, BUT after all it has been a timewaster for me.
  3. My recommendation is to go with the AWESOME(!!!) https://github.com/jalik/jalik-ufs which has worked really really well for me out of the box. The API is really clean and when looking at its codebase you can tell that it is implemented really clean. All you have to do to get GridFS working is installing an additional package.

Good luck and thanks for your help!

1 Like

Converted from CFS to https://github.com/vsivsi/meteor-file-collection long ago and haven’t looked back yet. If all you need is GridFS support, definitely have a look.