A secure, real-time, ephemeral note-sharing web application.
sendtext.me allows you to create private, password-protected "spaces" to share notes and text snippets. Notes are synchronized in real-time with everyone who has access to the space, making it perfect for quick collaboration or sharing information between your own devices.
| Create a new space | Main UI | Mobile UI |
![]() |
![]() |
![]() |
- 🔒 Secure Spaces: Every space is protected by a password.
- 🚀 Real-time Collaboration: Notes are updated instantly across all connected clients using Server-Sent Events (SSE).
- 🔗 Shareable Links: Spaces are accessible via unique, hard-to-guess URLs.
- 🤫 Ephemeral Sessions: Access to spaces is session-based and can expire, enhancing privacy.
- 📱 Mobile-Friendly: Responsive design that works on all devices.
- ⚡️ Fast & Lightweight: Built with SvelteKit and Bun for optimal performance.
- 🛡️ Secure by Design:
- Passwords are securely hashed using
bcrypt. - Protection against brute-force attacks with rate limiting.
- Potential for end-to-end encryption of notes (client-side encryption logic is in place).
- Passwords are securely hashed using
- Framework: SvelteKit
- Language: TypeScript
- Runtime: Bun
- Database ORM: Prisma
- Database:
- Styling: Tailwind CSS with Bits UI
- Real-time Engine: Server-Sent Events (SSE)
-
Clone the repository:
git clone https://github.com/your-username/sendtext-me_sveltekit.git cd sendtext-me_sveltekit -
Install dependencies:
bun install
-
Set up environment variables:
Create a
.envfile by copying the example file:cp .env.example .env
The default configuration uses a local SQLite database and should work out of the box.
-
Initialize the database:
This command will create the SQLite database file and apply the necessary schema.
bun run db:gen:sqlite
-
Run the development server:
bun run dev
The application should now be running on http://localhost:5173.
- Open the application in your browser.
- You will be prompted to create a new "space". Enter a password for your space.
- You will be redirected to your new space, which has a unique URL in the address bar.
- Share this URL with anyone you want to share notes with. They will need the password to enter the space.
- Start typing in the text area. The content will be saved and updated in real-time for all participants.
bun run dev: Starts the development server.bun run build: Creates a production build of the.bun run preview: Previews the production build locally.bun run check: Runs Svelte check for type checking.bun run db:gen:sqlite: Generates Prisma client and pushes the schema for SQLite.bun run db:gen:neon: Generates Prisma client for Neon (Postgres).


