The Transloadit crew has built something simple, elegant, powerful and fun.
Joe Stump
founder of Sprint.ly
We handle file uploads, resize, crop and watermark your images, make GIFs, transcode your videos, extract thumbnails, generate audio waveforms, and so much more. In short, we are a Swiss Army Knife for your files.
We accept file uploads and imports from various sources, including mobile apps, web browsers, URLs, S3, Cloud Files, Azure, FTP, Facebook, Dropbox and more!
We offer a variety of file conversions for all sorts of media, including images, videos, audio, and documents.
Export uploads and encoded results to the services of your choice, then save the URLs to your database for later use.
Embed the file URLs into your app, so users can enjoy media files with the best possible quality for their device.
Outsourcing file processing will cut costs, save your team many headaches and get your app into production faster.
Keep your app servers running fast by isolating them from loadspikes related to media processing.
String together multiple processing steps in order to handle complex workflows and tasks with ease
We pride ourselves in providing outstanding and timely support to all of our users. You will have direct access to our developers.
The Transloadit crew has built something simple, elegant, powerful and fun.
Joe Stump
founder of Sprint.ly
Thanks to Transloadit, Coursera now has a 1-click photo upload!
Pamela Fox
engineer at Coursera
Transloadit is a great way to save time and money in dev and server costs!
Peter Gerard
founder of Distrify
$('#upload-form').transloadit({
params: {
auth: {
key: 'abc123'
},
steps: {
resize_to_125: {
robot: '/image/resize',
use: ':original',
width: 125,
height: 125,
resize_strategy: 'pad',
background: '#444'
}
}
}
})
By using our jQuery SDK, you can bring the power of Transloadit directly to your HTML forms. It will even display a stylish upload progress bar.
Enjoy ample customization options for design and behavior and make use of the many event callbacks to tailor its behavior to your needs.
var TransloaditClient = require('transloadit');
var transloadit = new TransloaditClient({
authKey : 'abc123',
authSecret : 'abc123efg'
});
transloadit.addFile('myimage', './lolcat.jpg');
var options = {
params: {
template_id: 'xyz789'
}
};
transloadit.createAssembly(options, function(err, result) {
if (err) {
throw new Error(err);
}
console.log(result);
});
We have a fully featured software development kit for Node.js, so you can easily integrate it into your node apps.
On the left side, you can see how easy it is to execute a Template of encoding instructions (saved on the website) on a set of local files.
options := transloadit.DefaultConfig
options.AuthKey = "abc123"
options.AuthSecret = "abc123efg"
client, err := transloadit.NewClient(options)
if err != nil {
panic(err)
}
assembly := client.CreateAssembly()
assembly.AddFile("myimage", "./lolcat.jpg")
assembly.AddStep("resize_to_125", map[string]interface{}{
"robot": "/image/resize",
"width": 125,
"height": 125,
})
info, err := assembly.Upload()
if err != nil {
panic(err)
}
We have a powerful Go client that makes using Transloadit easy.
On the left side, you can see an example of executing a dynamic file conversion Step on a local file.
transloadit = Transloadit.new(
:key => 'abc123',
:secret => 'abc123efg'
)
resize_to_125 = transloadit.step 'resize_to_125', '/image/resize',
:width => 125,
:height => 125
assembly = transloadit.assembly(
:steps => [ resize_to_125 ]
)
response = assembly.submit! open('./lolcat.jpg')
until response.finished?
sleep 1; response.reload!
end
if !response.error?
# handle success
end
Our Ruby Gem allows you to automate the uploading of files through the Transloadit REST API.
If you run Ruby on Rails and are instead looking to integrate with the browser to handle file uploads, then we also have a Ruby on Rails SDK ready for you to use.
use transloadit\Transloadit;
$transloadit = new Transloadit(array(
'key' => 'abc123',
'secret' => 'abc123efg',
));
$response = $transloadit->createAssembly(array(
'files' => array(
'./lolcat.jpg',
),
'params' => array(
'steps' => array(
'resize_to_125' => array(
'robot' => '/image/resize',
'width' => 125,
'height' => 125,
),
),
),
));
Our PHP SDK allows you to automate the uploading of files through the Transloadit REST API using PHP.
It can be installed via composer.
npm install transloadify -g
export TRANSLOADIT_KEY="abc123"
export TRANSLOADIT_SECRET="abc123efg"
mkdir "./templates/" "./input/" "./output/"
curl "http://j.mp/transloadify-linux" \
-Lo "./transloadify"
curl "http://j.mp/transloadify-hlsjson" \
-Lo "./hls.json"
curl "http://j.mp/transloadify-samplemp4" \
-Lo "./input/sample_mpeg4.mp4"
transloadify \
--steps ./hls.json \
--input "./input/" \
--recursive \
--output "./output/" \
--watch
Don't feel like coding? Use our command line tool to watch an ./input/ directory for incoming files and automatically convert them through instructions in a locally saved Template: ./templates/hls.json.
The results will be saved in the ./output/ directory.
This demo resizes and crops uploaded images to 100x100 pixels. Drop files to the left, or select files using the device's native file browser. See the Demos page for the Assembly Instructions used.
Transloadit can assemble multiple files into a single result, or a single file into multiple results. This demo archives all uploaded files into a single .zip file. See the Demos page for the Assembly Instructions used.
With the Uppy Transloadit integration, users can upload photos from their webcam straight to Transloadit. Excellent for capturing profile pictures! See the Demos page for the Assembly Instructions used.
Scan uploaded files and reject virus-infected ones before they ever reach your servers. See the Demos page for the Assembly Instructions used.
Save bandwidth and storage space by losslessly optimizing images, reducing file sizes by up to 80%. See the Demos page for the Assembly Instructions used.
Transloadit is proven technology, brought to you by a team of passionate engineers, hailing from around the world.
Meet our team
Being pioneers of Node.js meant that we had to “invent a few wheels”. With those wheels we have helped to put the world in motion.
Here are some of our more ambitious open source projects: