100% Free Forever
AI-Powered Learning
Industry Expert Content
Certificates & Badges
Learn At Your Own Pace

Web Development Reference

MIME Types Reference

A MIME type is the Content-Type label that tells a browser what a file actually is, independent of its extension — text/html, image/webp, application/json. Serving the wrong one makes browsers download files they should render, or refuse scripts and stylesheets outright. This reference maps each common extension to its correct type.

86 entries8 categoriesFree, no sign-up

Browse by Category

All MIME Types (86)

Text (10)

Markup, stylesheets, scripts and plain text.

text/html

Format

HTML

Description

Web pages. Always send it with charset=utf-8 so the browser does no guessing.

Extensions

.html .htm

text/css

Format

CSS

Description

Stylesheets. A stylesheet served as text/plain is silently ignored by the browser.

Extensions

.css

text/javascript

Format

JavaScript

Description

The standard type for scripts. application/javascript is the older spelling and works identically; ES modules use this same type.

Extensions

.js .mjs

text/plain

Format

Plain text

Description

Unformatted text. The safe fallback that renders in the browser rather than downloading.

Extensions

.txt .log

text/csv

Format

CSV

Description

Comma-separated values. Pair it with Content-Disposition: attachment to make a spreadsheet download.

Extensions

.csv

text/markdown

Format

Markdown

Description

Markdown source. Browsers display it as plain text — rendering is the application's job.

Extensions

.md .markdown

text/xml

Format

XML (readable)

Description

XML intended for humans to read. Use application/xml when it is only for machines.

Extensions

.xml

text/calendar

Format

iCalendar

Description

Calendar events. Mail clients offer to add it to a calendar on sight.

Extensions

.ics

text/vcard

Format

vCard

Description

Contact cards, the payload behind most contact QR codes.

Extensions

.vcf

text/event-stream

Format

Server-sent events

Description

The streaming type for EventSource. Requires no buffering anywhere in the proxy chain to work.

Extensions

Images (12)

Raster and vector image formats.

image/jpeg

Format

JPEG

Description

Lossy photographic compression. No transparency, and repeated re-saving degrades quality.

Extensions

.jpg .jpeg

image/png

Format

PNG

Description

Lossless with alpha transparency. The right choice for screenshots, logos and line art.

Extensions

.png

image/gif

Format

GIF

Description

256 colours and simple animation. Superseded by WebP and AVIF for anything but nostalgia.

Extensions

.gif

image/webp

Format

WebP

Description

Lossy and lossless in one format with transparency and animation. Roughly 30% smaller than JPEG at the same quality.

Extensions

.webp

image/avif

Format

AVIF

Description

AV1-based still images — smaller again than WebP, with HDR and wide gamut. Slower to encode.

Extensions

.avif

image/svg+xml

Format

SVG

Description

Vector graphics as XML. It can contain script, so sanitise any SVG a user uploads before serving it.

Extensions

.svg

image/x-icon

Format

Favicon

Description

The type browsers actually honour for favicons, despite image/vnd.microsoft.icon being the registered name.

Extensions

.ico

image/bmp

Format

Bitmap

Description

Uncompressed raster images. Huge files, essentially never right for the web.

Extensions

.bmp

image/tiff

Format

TIFF

Description

High-fidelity images for print and scanning. Not displayable in browsers.

Extensions

.tif .tiff

image/heic

Format

HEIC

Description

The default camera format on iPhones. Browser support is limited, so uploads usually need converting.

Extensions

.heic .heif

image/apng

Format

Animated PNG

Description

Animation with full alpha and 24-bit colour, unlike GIF.

Extensions

.apng

image/jxl

Format

JPEG XL

Description

A newer codec with lossless JPEG recompression. Browser support remains partial.

Extensions

.jxl

Audio (9)

Compressed and uncompressed sound.

audio/mpeg

Format

MP3

Description

The near-universal lossy audio format. Note the type is audio/mpeg, not audio/mp3.

Extensions

.mp3

audio/wav

Format

WAV

Description

Uncompressed PCM audio. Large, lossless, and the usual intermediate in audio processing.

Extensions

.wav

audio/ogg

Format

Ogg Vorbis

Description

Open, royalty-free lossy audio in an Ogg container.

Extensions

.ogg .oga

audio/webm

Format

WebM audio

Description

Opus or Vorbis in a WebM container — what MediaRecorder produces in Chrome by default.

Extensions

.weba

audio/aac

Format

AAC

Description

The successor to MP3, better at equal bitrate. Standard in the Apple ecosystem.

Extensions

.aac

audio/mp4

Format

M4A

Description

AAC audio in an MP4 container, the format iTunes and Apple Music use.

Extensions

.m4a

audio/flac

Format

FLAC

Description

Lossless compression at roughly half the size of WAV.

Extensions

.flac

audio/opus

Format

Opus

Description

Excellent at both speech and music bitrates. The codec WebRTC uses for voice.

Extensions

.opus

audio/midi

Format

MIDI

Description

Note instructions rather than recorded sound, so files are tiny.

Extensions

.mid .midi

Video (9)

Containers and streaming manifests.

video/mp4

Format

MP4

Description

H.264 in an MP4 container — the most broadly compatible web video. Put the moov atom first so it streams before fully downloading.

Extensions

.mp4 .m4v

video/webm

Format

WebM

Description

VP8, VP9 or AV1 in an open container. Smaller than MP4, with no Safari guarantee on older devices.

Extensions

.webm

video/ogg

Format

Ogg Theora

Description

An early open video format, now largely historical.

Extensions

.ogv

video/quicktime

Format

QuickTime

Description

Apple's MOV container. Often needs remuxing to MP4 for the web.

Extensions

.mov

video/x-msvideo

Format

AVI

Description

A legacy Microsoft container. Not playable natively in browsers.

Extensions

.avi

video/x-matroska

Format

Matroska

Description

A flexible container carrying many tracks and subtitles. Common for downloads, not for browsers.

Extensions

.mkv

application/vnd.apple.mpegurl

Format

HLS playlist

Description

The manifest for HTTP Live Streaming, listing the segments a player fetches in turn.

Extensions

.m3u8

application/dash+xml

Format

DASH manifest

Description

The MPEG-DASH equivalent of an HLS playlist for adaptive streaming.

Extensions

.mpd

video/mp2t

Format

MPEG-TS

Description

Transport stream segments, the pieces an HLS playlist points at.

Extensions

.ts

Documents (11)

Office formats, PDF and e-books.

application/pdf

Format

PDF

Description

Fixed-layout documents. Browsers render it inline unless Content-Disposition says otherwise.

Extensions

.pdf

application/msword

Format

Word (legacy)

Description

The pre-2007 binary .doc format.

Extensions

.doc

application/vnd.openxmlformats-officedocument.wordprocessingml.document

Format

Word (DOCX)

Description

The modern Word format — a zip of XML parts, which is why the type is so long.

Extensions

.docx

application/vnd.ms-excel

Format

Excel (legacy)

Description

The pre-2007 binary .xls format.

Extensions

.xls

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

Format

Excel (XLSX)

Description

The modern Excel workbook format.

Extensions

.xlsx

application/vnd.ms-powerpoint

Format

PowerPoint (legacy)

Description

The pre-2007 binary .ppt format.

Extensions

.ppt

application/vnd.openxmlformats-officedocument.presentationml.presentation

Format

PowerPoint (PPTX)

Description

The modern PowerPoint deck format.

Extensions

.pptx

application/vnd.oasis.opendocument.text

Format

OpenDocument text

Description

The LibreOffice and OpenOffice document format.

Extensions

.odt

application/vnd.oasis.opendocument.spreadsheet

Format

OpenDocument sheet

Description

The LibreOffice spreadsheet format.

Extensions

.ods

application/rtf

Format

Rich Text

Description

A portable formatted-text format readable by essentially every word processor.

Extensions

.rtf

application/epub+zip

Format

EPUB

Description

The open e-book standard — reflowable HTML in a zip.

Extensions

.epub

Archives & Binaries (12)

Compressed bundles and executables.

application/zip

Format

ZIP

Description

The most widely supported archive format, readable without extra software on every desktop platform.

Extensions

.zip

application/gzip

Format

Gzip

Description

Single-file compression. A .tar.gz is a tar archive that has then been gzipped.

Extensions

.gz

application/x-tar

Format

Tar

Description

An uncompressed bundle of files preserving Unix permissions.

Extensions

.tar

application/x-7z-compressed

Format

7-Zip

Description

Higher compression than zip, at the cost of needing 7-Zip to open.

Extensions

.7z

application/vnd.rar

Format

RAR

Description

A proprietary archive format needing third-party software to extract.

Extensions

.rar

application/x-bzip2

Format

Bzip2

Description

Better compression than gzip and noticeably slower.

Extensions

.bz2

application/zstd

Format

Zstandard

Description

Near-gzip ratios at far higher speed. Increasingly the default in package managers.

Extensions

.zst

application/octet-stream

Format

Arbitrary binary

Description

The generic "unknown binary" fallback. Browsers download it rather than rendering, which is useful deliberately and a bug by accident.

Extensions

.bin .exe

application/wasm

Format

WebAssembly

Description

Required for streaming compilation — WebAssembly.instantiateStreaming refuses any other type.

Extensions

.wasm

application/java-archive

Format

JAR

Description

A Java archive, structurally a zip with a manifest.

Extensions

.jar

application/vnd.android.package-archive

Format

Android APK

Description

An Android application package.

Extensions

.apk

application/x-apple-diskimage

Format

macOS disk image

Description

The DMG format macOS applications are distributed in.

Extensions

.dmg

Data & Application (17)

Structured interchange and API payloads.

application/json

Format

JSON

Description

The default for REST APIs. Defined as always UTF-8, so a charset parameter is redundant.

Extensions

.json

application/ld+json

Format

JSON-LD

Description

Linked data — the format search engines read structured data in, including this site's schema markup.

Extensions

.jsonld

application/xml

Format

XML

Description

XML for machine consumption. Use text/xml when a human is expected to read it.

Extensions

.xml

application/rss+xml

Format

RSS feed

Description

A syndication feed for blogs and podcasts.

Extensions

.rss .xml

application/atom+xml

Format

Atom feed

Description

The stricter, better-specified alternative to RSS.

Extensions

.atom

application/x-www-form-urlencoded

Format

Form (encoded)

Description

The default encoding for an HTML form post — key=value pairs joined by ampersands. Cannot carry files.

Extensions

multipart/form-data

Format

Form (multipart)

Description

The encoding required for file uploads, splitting each field into its own part with a boundary marker.

Extensions

application/graphql

Format

GraphQL

Description

A raw GraphQL query body. Most clients post application/json with a query field instead.

Extensions

.graphql .gql

application/grpc

Format

gRPC

Description

gRPC over HTTP/2. Requires end-to-end HTTP/2, which is why some proxies break it.

Extensions

application/x-ndjson

Format

NDJSON

Description

One JSON object per line, so a huge dataset can be streamed and parsed incrementally.

Extensions

.ndjson .jsonl

application/yaml

Format

YAML

Description

Configuration and manifests. Registered only recently; text/yaml is still seen in the wild.

Extensions

.yaml .yml

application/toml

Format

TOML

Description

A configuration format designed to be unambiguous, used by Cargo and pyproject.

Extensions

.toml

application/sql

Format

SQL

Description

SQL scripts and database dumps.

Extensions

.sql

application/manifest+json

Format

Web app manifest

Description

The PWA manifest describing name, icons and display mode for an installable web app.

Extensions

.webmanifest

application/pgp-signature

Format

PGP signature

Description

A detached signature verifying that a file has not been altered.

Extensions

.asc .sig

application/x-pkcs12

Format

PKCS#12 bundle

Description

A certificate and its private key in one password-protected file.

Extensions

.p12 .pfx

application/x-x509-ca-cert

Format

X.509 certificate

Description

A DER or PEM encoded certificate.

Extensions

.crt .cer .pem

Fonts (6)

Web and desktop font formats.

font/woff2

Format

WOFF2

Description

The web font format to ship. Brotli-compressed, roughly 30% smaller than WOFF, and supported everywhere that matters.

Extensions

.woff2

font/woff

Format

WOFF

Description

The older web font format, worth serving only as a fallback for genuinely ancient browsers.

Extensions

.woff

font/ttf

Format

TrueType

Description

A desktop font format. Usable on the web but unnecessarily large next to WOFF2.

Extensions

.ttf

font/otf

Format

OpenType

Description

TrueType with extra typographic features. Again, convert to WOFF2 before serving.

Extensions

.otf

font/collection

Format

Font collection

Description

Several fonts sharing one file, typically a family shipped together.

Extensions

.ttc

application/vnd.ms-fontobject

Format

EOT

Description

Embedded OpenType, needed only by Internet Explorer 8 and earlier.

Extensions

.eot

Frequently Asked Questions

What happens if I serve the wrong MIME type?

Browsers refuse to run resources whose type does not match their role — a stylesheet sent as text/plain is ignored, and a script sent as text/html is blocked. Files sent as application/octet-stream download instead of rendering. With X-Content-Type-Options: nosniff set, the browser will not guess and the failure is hard.

What is the correct MIME type for JavaScript?

text/javascript. It was long written as application/javascript, but the HTML specification now defines text/javascript as the standard and browsers treat both identically. ES modules use the same type; what makes them modules is type="module" on the tag, not the MIME type.

What is application/octet-stream?

The generic "arbitrary binary data" type — the fallback when a server does not know what a file is. Browsers download it rather than trying to render it, which makes it useful deliberately for forcing a download, and a bug when a real type exists.

Do I need charset on a Content-Type?

For text formats, yes — Content-Type: text/html; charset=utf-8 removes any guessing about encoding. It is unnecessary for binary types, and application/json is defined as always UTF-8, so a charset parameter on it is redundant.

Related Reading

#MIME#ContentType#HTTP#WebDevelopment#FileFormats#Frontend#Backend#WebStandards#QuickReference#DeveloperReference#KnowledgeHub#SkillVeris#MimeTypes#ContentTypeHeader#ApplicationJsonMime

Frequently Asked Questions

21 categories · pick one to explore

What is SkillVeris?
SkillVeris is a completely free tech-upskilling platform offering 37 live courses across AI/ML, programming, web development, DevOps, cloud, security and databases. It combines structured courses of 24–40 lessons, a 24/7 AI Mentor, and a unique Learn Through Hobbies method that explains technical concepts through cricket, music, gaming, cooking and more. It is powered by Sri Hayavadhana.
Is SkillVeris really a free learning platform?
Yes, SkillVeris is genuinely free. Every course, assessment, certificate, study note, cheat sheet and the AI Mentor are available at no cost. There are no hidden paywalls, trial periods or premium tiers locking away lessons. The platform was built to make quality tech education accessible to learners in India and worldwide without financial barriers.
Who is SkillVeris for?
SkillVeris is for anyone learning technology skills: complete beginners starting to code, students preparing for placements, working professionals switching into AI, DevOps or cloud roles, and hobbyists exploring new tools. Courses span beginner to advanced levels, and the Learn Through Hobbies method makes complex topics approachable even if you have no technical background at all.
What makes SkillVeris different from other online learning platforms?
SkillVeris stands out with its Learn Through Hobbies method, which teaches every concept through analogies from cricket, music, gaming, cooking and eight more domains you can switch instantly. Add a free 24/7 AI Mentor, structured courses of 24–40 lessons with certificates, Code Lab for in-browser practice, and a live jobs portal, all completely free of charge.
What can I learn on SkillVeris?
You can learn AI and machine learning, Python, programming fundamentals, web development, DevOps, cloud computing, security and databases through 37 live courses. Beyond courses, SkillVeris offers study notes, cheat sheets, a glossary of roughly 2,000+ terms, 500+ blog articles, interview questions with readiness scoring, and Code Lab supporting six programming languages.
Does SkillVeris offer personalized learning?
Yes, personalization is central to SkillVeris. You choose the analogy domain that matches your interests, cricket, gaming, music, cooking and more, and lessons instantly adapt their explanations. The AI Mentor answers your questions at Quick, Detailed or Deep-dive depth, and learning paths guide you toward specific careers like AI Engineer or DevOps Engineer.
Do I need any prior experience to start learning on SkillVeris?
No prior experience is needed. Many SkillVeris courses are designed for absolute beginners, starting from fundamentals and building up gradually across 35 structured lessons. The Learn Through Hobbies analogies explain technical ideas using everyday interests, so newcomers grasp concepts faster. Intermediate and advanced courses are also available when you are ready to progress.
How do I get started with SkillVeris?
Simply visit skillveris.com, create a free account, and pick a course from the Topics page or follow a learning path like AI Engineer or Full Stack Java Developer. Choose your favourite analogy domain, work through the lessons, pass the module assessments and final exam, and earn your certificate, all without paying anything.
Is SkillVeris available in India?
Yes, SkillVeris is fully available in India and is built with Indian learners strongly in mind. All 37 courses, certificates and tools are free, and the jobs portal aggregates live roles across India alongside the UK, USA, Germany and remote positions, with salary and experience filters to help you find relevant opportunities.
Can I use SkillVeris on my mobile phone?
Yes, SkillVeris works in any modern mobile browser, so you can read lessons, switch analogy domains, ask the AI Mentor questions and take assessments from your phone. The platform is designed to load fast on mobile connections, making it practical to learn during commutes or short breaks without needing a laptop.
What is the Learn Through Hobbies method on SkillVeris?
Learn Through Hobbies is SkillVeris's signature teaching approach: every key concept is explained through analogies drawn from twelve domains including cricket, music, gaming, cooking, fitness, travel and finance. You pick the domain you love and can switch instantly, so abstract topics like machine learning pipelines feel familiar rather than intimidating.
Does SkillVeris have an AI tutor?
Yes, SkillVeris includes a built-in AI Mentor available 24/7. You can ask it any question about your lessons or technology in general and choose the depth of the answer: Quick for a fast summary, Detailed for a fuller explanation, or Deep-dive for a thorough walkthrough. It is free for every learner.
Does SkillVeris help with job hunting?
Yes, SkillVeris has a jobs portal aggregating live roles across India, the UK, USA, Germany and remote positions, with salary and experience filters. Combined with interview questions featuring readiness scoring, career-focused learning paths and free certificates you can share, the platform supports your job search from skill-building through to applications.
What learning paths does SkillVeris offer?
SkillVeris offers career-oriented learning paths such as AI Engineer, DevOps Engineer and Full Stack Java Developer, among others. Each path sequences relevant courses in a logical order so you build skills progressively toward a specific role, rather than guessing which course to take next. All path courses are free and include certificates.
How much time do I need to complete a SkillVeris course?
It depends on your pace. Structured courses contain 24–40 lessons (most have 35) plus module assessments and a final exam, and each lesson typically takes around half an hour of focused reading and practice. Many learners finish a course in a few weeks studying part-time, while dedicated full-time learners can move considerably faster.
Can I practice coding on SkillVeris?
Yes, SkillVeris includes Code Lab, an in-browser coding environment supporting six programming languages across 15 practice categories. You can write and run code directly in your browser without installing anything, which makes it easy to reinforce what you learn in lessons immediately. Code Lab is free, like everything else on the platform.
Does SkillVeris have free study materials besides courses?
Yes, alongside courses SkillVeris offers free study notes, cheat sheets for quick revision, a glossary of roughly 2,000+ technical terms, more than 500 blog articles, and interview questions with readiness scoring. These resources complement the courses and are handy for exam preparation, interviews and quick refreshers, all at no cost.
Who powers SkillVeris?
SkillVeris is powered by Sri Hayavadhana. The platform's mission is to make high-quality technology education free and genuinely engaging, combining structured courses, an always-available AI Mentor and the Learn Through Hobbies analogy method so learners in India and around the world can upskill without cost being a barrier.
Is SkillVeris suitable for working professionals switching careers?
Yes, career switchers can follow structured learning paths like AI Engineer or DevOps Engineer, study flexibly around work using mobile-friendly lessons, and validate their progress through assessments and certificates. The jobs portal with salary and experience filters, plus interview questions with readiness scoring, helps professionals move into new tech roles confidently.
How is SkillVeris free, is there a catch?
There is no catch. SkillVeris does not charge for courses, certificates, the AI Mentor, Code Lab or any learning resource, and there are no trial expirations or locked premium content. The platform exists to make tech education accessible, particularly for learners in India and other regions where paid platforms are often out of reach.

What Learners Say

Real journeys from the SkillVeris community — swipe for more.

SkillVeris taught me Python through Cricket. Now I’m building real projects and feeling confident!
Arjun S. · B.Tech Student
The best platform for hobby-based learning. Concepts finally stick.
Priya R. · Data Analyst
I went from zero coding to a portfolio of projects — all by learning through my love for gaming. Landed my first internship!
Kabir M. · CS Undergraduate
Trending Topics50 popular tags — tap to explore
Trending CoursesAll 37 free courses — tap to browse