Free online tools that run in your browser
Your files never leave your device · No login required · 100% free
Convert, compress, calculate, generate, edit and check files right in your browser — fast, private and easy to use.
Search results
Popular tools
View all toolsBrowse by category
Popular file conversions
View all convertersProgramming
Learn and practise programming in your browser. Pick a language: write code, run it in a real terminal and follow the lessons step by step.
Why Shiklo Tools?
Simple, private tools that just work — right in your browser.
- Private Everything runs in your browser. Files are never uploaded.
- Secure Encrypted HTTPS connection, and nothing you open is stored on our servers.
- No login required No account, no sign-up, no email. Just open a tool and use it.
- Fast No upload or download wait — results appear instantly.
- Free All tools are free to use, with no limits.
- Works everywhere Phone, tablet or computer, in any modern browser.
🆕 New tools
★ Popular tools
Recently used
Frequently asked questions
Are my files or text uploaded anywhere?
No. Every tool runs inside your browser on your own device. Nothing you enter or open is sent to a server.
Do I need to create an account or log in?
No login is required. There are no accounts — open any tool and start using it straight away.
Are the tools really free?
Yes. All tools are free, with no limits or watermarks. The site is supported by ads.
Does it work on my phone?
Yes. The tools work in any modern browser on phones, tablets and computers.
Can I use the tools offline?
Once a tool has loaded it does its work on your device, so it keeps working even if your connection drops.
Which file types are supported?
PDF, Word, Excel, PowerPoint, OpenDocument and RTF documents, JPG, PNG, WebP, HEIC, AVIF, GIF and BMP images, MP4, MOV, WebM and MKV videos, MP3, WAV, M4A, OGG and FLAC audio, ZIP, 7z, RAR, TAR and GZIP archives, CSV, JSON, XML and plain text. Each tool lists exactly what it opens.
All tools with descriptions →
Sprite Sheet Generator
Combine many images into one sprite sheet PNG — grid, row, column or packed — with matching CSS classes and a JSON frame map.
A sprite sheet combines many small images — icons, buttons, flags, or the frames of an animation — into one image. Websites use it to load a whole icon set in a single request, showing each icon with CSS background-position; games use it as a texture atlas so the graphics card draws everything from one texture. Building one by hand means measuring every position; this generator does it for you.
Add your images and choose how to arrange them: a grid, a single row, a column, or packed tightly to save space. Set the padding between images. The tool draws the sheet, writes a CSS class for every image, and creates a JSON frame map in the widely used TexturePacker hash format, which Phaser, PixiJS and many engines read directly. Download everything as one ZIP. Your images never leave your browser.
How to use Sprite Sheet Generator
- Add or drop your images — icons, frames or UI pieces.
- Choose the layout and the padding.
- Check the preview and the CSS.
- Download the sheet, CSS and JSON as a ZIP, or the PNG alone.
Features
- Grid, row, column or tightly packed layout.
- Adjustable padding between images.
- CSS class for every image with background-position.
- JSON frame map (TexturePacker hash format).
- PNG, JPG, WebP, GIF and SVG input; transparency kept.
- Up to 500 images; sheets up to 8192 pixels on a side.
- Runs in your browser; nothing is uploaded.
Common uses
Combine a website's icon set into one image to cut down requests, build a flag or emoji sprite, pack a character's animation frames for an HTML5 or Phaser game, make a texture atlas of UI elements, or prepare frames for a CSS steps() animation. One file also makes it easier to version and cache the graphics together.
Choosing a layout
The layout decides where each image goes. Animation frames usually belong in a grid or row; mixed icon sets pack best.
| Layout | Best for |
|---|---|
| Grid | Animation frames of the same size; simple engines that expect equal cells |
| Row | Short animations, CSS step() animations |
| Column | Vertical icon strips |
| Packed | Icon sets of different sizes — the smallest sheet |
Using the CSS
Each image gets a class named after its file: icon-home.png becomes .sprite-icon-home with the prefix sprite, which you can change. Every class sets the width, height and background-position of that image, and a shared class sets the sheet as the background. Add both classes to an element, for example a span with the classes sprite and sprite-icon-home, and the icon appears. Upload spritesheet.png next to the CSS file, or change the path in the CSS. For sharp icons on high-density screens, make the sheet from images at twice the size and set background-size to half, as the comment in the CSS explains.
Using the JSON in games
The JSON lists every frame by its original file name with its position and size, in the hash format produced by TexturePacker. Phaser loads it with load.atlas, PixiJS with its Spritesheet loader, and many other engines and tools read the same format. Frames are never rotated or trimmed, so positions are exactly where you see them in the preview. Padding helps avoid colour bleeding between frames when graphics are scaled.
Limits and privacy
Up to 500 images can go on one sheet, and the sheet can be at most 8192 pixels wide or tall, a size every modern browser and graphics card handles; the tool warns you if a layout would be larger. Images are combined at their original size; transparent PNG, WebP and SVG images keep their transparency. Everything is drawn on your device, so unreleased game art stays private.
Frequently asked questions
How many images can I combine?
Up to 500, as long as the sheet stays within 8192 pixels on each side.
Can I change the CSS class names?
Yes. Change the prefix; each class is named after its image file.
What is a sprite sheet?
One image containing many smaller images, shown individually with CSS or by a game engine.
How do I use the CSS sprites?
Add the class sprite and the image's own class, such as sprite-icon-home, to an element.
Does it work with Phaser?
Yes. Load the PNG and JSON with load.atlas.
Can images have different sizes?
Yes. Packed layout fits them most tightly.
Is transparency kept?
Yes. The sheet is a PNG with transparency.
Are my images uploaded?
No. Everything happens in your browser.