106 comments

[ 3.1 ms ] story [ 199 ms ] thread
With more and more of user's content on the web, we decided it should be far easier for users to work with that content on websites. Hope you like it! It's rough, but we wanted to get feedback as we work on it.
It sounds like Imgur with an Aviary plug in attatched to it.

The only additional places you're pulling from are dropbox and facebook. Do you have plans to pull from more locations?

Also, do you have plans to allow website owners to integrate this with their own site (much like Aviary allows you to integrate the editor you're using)?

Yup, we're planning on supporting a whole bunch, including fancier things like gmail attachments, evernote, etc. Are their clients you'd like?

And yeah, you can use it on your site right now. Grab a key and you're good to go

Hmmm, I'd want a client capable of seeking out images stored as a background image or underneath a invisible div that some site owners use to protect their image. But that's probably impossible.
Interesting, what uses were you thinking of?
Well one case would be to have a bookmarklet that lets you upload from any webpage.

As a site owner, not having to write yet another bookmarklet would be great.

I've wanted a service like this for a while but haven't had time to make it. A few other ways you could get photos from users:

- get a picture from their phone. This seems really important and useful, but I'm not sure the best way to do this. Ideas: 1) let them email it from their phone to a special email address 2) give them a url that takes them to a site that opens up an "upload" dialog Both of these my be accomplishable w/ a QR code

- let them paste in a URL of an image. I've used embed.ly for this. It will take all sort of urls: plain images (rare for non-technical users), Flickr URLs, etc

I like it. It's sleek, easy to use and very well implemented. Congratulations on creating this, I will keep this in mind in case I ever need it in the future.
This is a good concept but needs a lot of work.

1. I don't want things opening in a new window on my site

2. I don't want someone else's branded module opening on my site

3. This is designed using bootstrap

If you hired a real designer, made it a script that could open a modal on my site, and gave the option to pay some small fee to get rid of your branding and give it a few color theming options, I would be totally on board.

1. Good to know. It'd be interesting to know how the community feels about windows vs iframes. We felt like windows were more analogous to system dialogs, but iframes are easier for message passing 2. Would you pay for custom branding? 3. I defer to other articles re. bootstrap. We figured if we wanted to match the styling of other sites in the best possible way, bootstrap is a decent choice
This is a good business model you guys are aiming for. I think people would definitely pay for custom branding and you're solving a current pain point! Would have used this in a couple of projects I've been involved in.
Good to know that we aren't the only ones who feel this way.

Would love to chat about what you'd use if for, if you have the time.

> We felt like windows were more analogous to system dialogs, but iframes are easier for message passing

Stop. Hire a designer.

To this comment - yes, that was what I said originally. agreed.

To the above response, if it was good enough I'd pay for custom branding for sure. Is the aviary module supposed to be part of the service? For me, that's not really a good addition. Perhaps as an option that can be enabled. If you could just give me a really nice looking modal that allowed a file upload through the ways you provided, hosted the files for me and gave me back a url, that would be enough to merit a small payment at least. I'd only include a very small branding badge at the bottom but have the option to remove that for an additional price.

We're currently looking for one
Apologies if I missed a nuance but it would be more helpful if you explained why...? Are you saying the OP is spending too much time pontificating when they should be handing the work to a trained professional? Or are you disagreeing with what they said?
You have to read the three reasons posted above and then the explanation. The service as implemented on the backend looks good but on the front end they need some help of the professional kind.

Also, including the Aviary viewer in the demo takes away from the product.

"Doesn't currently support Internet Explorer"

Is this considered okay again? Best Viewed in [Netscape 3.0] or [Internet Explorer]

I wouldn't say we consider it ok by any means. But we'd rather get the feedback earlier than later, so we said screw it and sent it out
I don't have a problem with it. It's a MVP so the people trying it out won't be using IE either.
I presume your limitations are due to the drag drop file handling on the upload from computer?

I did something recently like this and ended up with an ugly "Select file" button when people are in IE.

I really hope IE are pulling their fingers out with IE10, it appears they are. We are getting a load of adverts in the UK now on Microsoft products, like Bing etc. It seems to me they are taking it seriously again.

Actually the drag-drop isn't as big of a deal as cross-domain message passing. We'll likely end up having to use a flash fallback or similar, but last night as we were hacking on this we decided to punt for a day or two
It doesn't support D&D on OS X / Safari
I was actually really surprised when I discovered this when developing the bulk upload facility I did. It wasn't great when 9/10 computers in our office are Macs. Didn't make it worthwhile showing it off to people in our place!

I'm sure they will all support it soon enough and my days coding it will be worthwhile.

I'm not a js guru, and am having trouble understanding the example code. Could you post a more thorough example?
To save on copy-pasting, check out our demo app, the source for the landing page: http://filepicker.io/static/js/demo-app.js

Make sure you put the imports in too. Hope you like it, and let us know if you need a hand

Sorry for the late followup, but thanks for the link. getFile is a callback for when a file is uploaded, not a way to just get one file (I'm coming from an ActiveRecord/Ruby view of things).
Why are 4 CS geniuses from MIT using their talents to build pretty file uploading UI? Pretty file upload UI is easy!
Secondly, when building a simple fun tool to be used on websites, is a four-image team bio with MIT written in capital letters all over it necessary?
Because we're tired of not being able to live entirely online, and this is one small step in that direction
I think the point is that is will support pulling files from any service you use to store them - dropbox, facebook, your computer, skydrive, etc. It's much more than a pretty file upload UI, and the fact that it looks that simple is actually its greatest achievement.
Putting images on a web page is easy, so we see images everywhere on the Web. If it were also easy, we would expect to see good file upload widgets everywhere. Good file upload widgets are not everywhere. From this, we can conclude that it is still an open problem.
They've got this MBA dude who's calling himself a hustler so they'll be alright :D
The Brass Rat messes with those guys' minds.
Why not? This isn't necessarily all they're doing with their time and (assumed) talent.
Brett,

This is great and I would pay to use it in a second if it could handle uploads on the iphone/ipad (something like http://www.aurigma.com/iphone/). I just signed up for the developer key. Will you be emailing that list with feature updates/news? Thanks

Good to know re. mobile.

Re. email, we'll be trying to limit the number of emails we send out to the lowest possible, but if there's interest we can create a separate mailing list that's higher volume for feature announcements, etc. over the coming week.

Great I'll be following the progress. One more thing I would really need is the ability to remove and order the upload options.
Good to know. Is that something you imagine the developer being able to specify or a user setting?
Hey Liyan, I would want this as something I, as the developer, could specify. A social site might want all the options there, but for my sites I'm worried about conversion and wouldn't want the added confusion of having upload choices that my customers are rarely going to use.
Great concept.

However, a small nitpick : When I click "Get a key" without entering any Email, I get an Internal Server Error at /thanks/. Probably you guys should handle edge cases?

Valid point. We'll get a patch in asap.
Thanks and fixed!
I've not tried it yet, but what a cool idea! Will be sure to give it a go
I like the concept and hope the team keeps exploring more. I wonder whether we can get additional information about the image - time, location, people tagged in it etc
That's good to know.

Just to be clear, would you like that information at the dialog or would you like the app developer to be able to see it?

My biggest fear is I'll use it, and a few months later you're acquired by Facebook and then it's gone.
We can't say this for certain, but what we'd like to do it put it down in writing that if for any reason we can't provide the service anymore, we open-source it. Would this help?
It would. Having pricing plans in place, to show you want to run an actual business would also help boost that confidence.
This is an excellent idea and it looks nicely executed, too. I only fear there may be a duplication of efforts in respect to the upcoming WebIntents framework. Do you guys have plans to integrate with it at some point?
We would love to be a webintents provider and it's on the feature list.

Part of this is also an effort to spur the webintents forward :D

Hey, intents are moving forward :) (Neat app, btw!)
Haha. No doubt. I'm on the w3c mailing list :D
Looks neat! However, you won't catch me putting my credit card details into that donations form. You might want to put a paypal button or something that makes me feel a bit more secure about the whole thing.
We thought it would be fun to use Stripe for something. Nothing touches our site.

I guess I don't have much money to steal; I'll look into PayPal for those lucky ones who have assets to protect :D

Considering its aimed at hackers, maybe put a "powered by stripe". That would probably reassure most people in your target market at the moment.

Though if you do end up adding a paypal button try not to use the word "donate", paypal seems to have a problem with non-charities doing this.

The donate button stays disabled if there's an error.
i think the facebook integration is less than optimal. If my site uses facebook login, and a user is asked for facebook again on initial use with filepicker the experience would be confusing.
That's a great thought. Custom stylesheets is on the feature map, but we should also be looking into someway of reducing the facebook double login as well. Thanks for this feature idea.
So let me see if I have this straight: you differ from other file uploaders out there (e.g., https://github.com/blueimp/jQuery-File-Upload/) in that you allow "upload from anywhere", plus a quite nice interface? Not to belittle it, those are solid additions to the space.

edit: Btw, if you're looking for IE support on the from-computer upload, look into using iframes for transport.

Right. Our goal is not only to be a great uploading experience, but also to tie in all the cloud services, like Dropbox, Facebook, GMail, etc.
Looks great, good job Thomas & team
I'm your target audience. I've built this exact function into client apps (upload from various sources and edit with Aviary). Its a PITA.

I'd consider yours, but there's a couple big problems right now:

    1) Doesn't support IE. 
    2) Doesn't work on mobile
There's other issues, but those are the show-stoppers.

FWIW, Chute (http://getchute.com) has a better implementation of this concept. That said, I still haven't seen enough of a value add here (with Filepicker or with Chute) to depend on yet another black box service that may shut down tomorrow.

Hi George,

Thanks for mentioning us. We definitely offer a very similar set of features with Slidechute.

I think the value add comes in many different ways, but we're just at the beginning of that process so it's not always all evident.

As for the black box, there's not a lot of Voodoo with us. Since launching we allow you to store media in your own S3 bucket and also to customize your app credentials so the authentication happens against your app.

Would love to know what features you thought would add the kind of value you need.

Hey Greg and Liyan! Those are great steps, didn't know you had done them. Helps a bit. I'd still have to replace your widget, but it would at least be possible.

I'm certainly open to brain-picking, email me anytime (in my profile).

how do you find this post? do you have google alerts set up? just curious
Qeorge, completely agree. Those are the two aspects that we should really nail so that others don't have to deal with it. I'll be sure to update you when I've learned more about IE and their Javascript engine then I ever wanted to know.

I'd be curious to pick your brain about what you think would add that additional value.

it's worth noting that it can't work on mobile - mobile safari does not support any kind of file uploads. But not working in IE is definitely a fatality
It's worth noting that iPhone does not equal Mobile. What about Android? Even if Chrome is the only Android browser supported, that would be plenty!
Once we get filepicker.io working on mobile browsers, sites using filepicker.io would allow users files directly from Dropbox, Facebook, etc without the iPhone directly supporting it.

And yes, we are working on IE support.

We now work on IE8+ as well as mobile safari and android
Done. Just pushed into master. We now support IE8+, Chrome (all), firefox 3+, most safari, recent opera. Also iPad, iPhone, Android
@brettcvz, you guys need to validate your email input for empty strings when signing up for a dev key. On the project note, looks very promising, keep up the good work.
Email validation in play. Thanks for pointing that out.
you guys should join up with Chute and crush it together!
:-) Interesting possibility......
Nice it's great that you used bootstrap so that if I change my bootstrap file it will change the module. Bootstrap for developer who aren't great designer has been a amazing tool. It has open my eyes to modules like this that gives my app the same feel.