File & Uploads Validators

File validation snippets for magic byte detection, file size limits, extension checking, and upload security.

25 code snippets available

Is PNG (Magic Bytes)

file

Validates file type by checking magic bytes, not just extension.

#buffer#binary#image
ts
const isPNG = (buffer: Uint8Array): boolean => {
  const signature = [137, 80, 78, 71, 13, 10, 26, 10];
  return buffer.length >= 8 && signature.every((b, i) => buffer[i] === b);
};

Is JPEG (Magic Bytes)

file

Validates JPEG by magic bytes.

#buffer#binary#image
ts
const isJPEG = (buffer: Uint8Array): boolean => buffer[0] === 0xFF && buffer[1] === 0xD8 && buffer[2] === 0xFF;

File Size Check

file

Validates file size is within limit (in MB).

#upload#validation
ts
const isValidFileSize = (bytes: number, maxMB: number): boolean => bytes <= maxMB * 1024 * 1024;

Get File Extension

file

Extracts file extension from filename.

#utility#parse
ts
const getExtension = (filename: string): string => filename.slice(((filename.lastIndexOf('.') - 1) >>> 0) + 2);

File .pdf

file

Validates .pdf extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.pdf$/.test(s);

File .doc

file

Validates .doc extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.doc$/.test(s);

File .docx

file

Validates .docx extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.docx$/.test(s);

File .csv

file

Validates .csv extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.csv$/.test(s);

File .json

file

Validates .json extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.json$/.test(s);

File .xml

file

Validates .xml extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.xml$/.test(s);

File .html

file

Validates .html extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.html$/.test(s);

File .js

file

Validates .js extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.js$/.test(s);

File .ts

file

Validates .ts extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.ts$/.test(s);

File .php

file

Validates .php extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.php$/.test(s);

File .py

file

Validates .py extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.py$/.test(s);

File .go

file

Validates .go extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.go$/.test(s);

File .sql

file

Validates .sql extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.sql$/.test(s);

File .zip

file

Validates .zip extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.zip$/.test(s);

File .tar

file

Validates .tar extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.tar$/.test(s);

File .gz

file

Validates .gz extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.gz$/.test(s);

File .mp3

file

Validates .mp3 extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.mp3$/.test(s);

File .mp4

file

Validates .mp4 extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.mp4$/.test(s);

File .jpg

file

Validates .jpg extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.jpg$/.test(s);

File .png

file

Validates .png extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.png$/.test(s);

File .svg

file

Validates .svg extension.

#extension
ts
const isValid = (s: string): boolean => /^.+\.svg$/.test(s);

About File & Uploads Validators

Our file & uploads validation snippets are designed to handle the most common validation scenarios you'll encounter in modern software development. Each snippet is thoroughly tested, optimized for performance, and follows industry best practices.

All validators are available in multiple programming languages including JavaScript, TypeScript, Python, Go, PHP, C#, and Rust. Simply copy the code snippet, adapt it to your specific needs, and integrate it into your project. Every snippet is MIT licensed—free for personal and commercial use.

Browse Other Categories