Skip to content

Cattn/SMS

Repository files navigation

SMS

Showcases

SMS Screenshot

2025-06-22.16-58-10.mp4

Need Help? Join my Development Server

SMS makes simple file sharing easy! Upload, share, and manage your files quickly. Supports file expiration, quick filters, and previews!

Cloning

To clone to the current directory: git clone https://github.com/Cattn/SMS .

How to deploy?

Install Dependencies

npm i install

npm i -g concurrently

Run Start Script

npm run startall

Ensure you run this script from SMS/.

Configuration

A configuration will be generated by default in api/config.json on first start. All values can be manually changed (no server restart needed) or modified in the settings tab of SMS.

Build Scripts

Normal

For a normal build & start, run npm run startall

Lightweight

There are 2 options for "lightweight" start scripts.

  1. Start, only re-build the server
  • npm run ncuStart
  1. Start, only re-build the client
  • npm run nsuStart

To start the server without re-building anything, run npm run nobStart

Notes

Lightweight Servers

The lightweight scripts intended for low-power servers where builds are expected to take significantly long times. When updates are released, they will be denoted with the following:

  1. -s, A server update
  2. -c, A client update
  3. -b, Both the client & server were updated.

If you need, you should use this as a guide for starting the server.

Warning

This service is NOT intended to be publicly available on your server. Please make sure ports 1337 and 5823 are not reachable from the internet.

F&Q

How do I set this up so I can quickly share links?

Create a simple host.js file that serves /uploads, and run it on your server.

Here's an example:

import express from 'express';
import path from 'path';
import * as fs from 'fs';
import http from 'node:http';
import { fileURLToPath } from 'url';
import { dirname } from 'path';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

const app = express();

const server = http.createServer(app);

const uploadsPath = path.join(__dirname, 'SMS', 'uploads');
if (fs.existsSync(uploadsPath)) {
	app.use('/uploads', express.static(uploadsPath));
	app.use('/uploads/*', (req, res) => {
		res.status(404).send('404, no media found!');
	});
	app.use('/SMS/upload/*', (req, res) => {
		res.status(404).send('404, did you mean `/SMS/uploads`?');
	});
}

server.listen(3000);

Then, simply make this server available at port 443 using your preferred web-server.

Contributors

Main Developer: Cattn

About

Simple Media Server (not)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •