Secret Notes

A secure web application designed to create secure, self-destructive notes that automatically erase after being read. Perfect for sending sensitive information that you don't want to remain accessible indefinitely.

Features

💥

Self-Destructive Notes

Each note is destroyed immediately after it is read, ensuring your sensitive information doesn't stay online longer than necessary.

🔑

Encryption

Customizable encryption settings allow you to set a unique salt for each note, enhancing security.

Ease of Use

A simple interface for quickly creating and sharing secure notes with your intended recipients seamlessly.

Flask vs Node.js

Flask Version

Python-based implementation with Flask, Fernet encryption, and server-side Jinja templates. Great for classic Python web stacks and quick prototyping.

  • Python + Flask
  • Fernet encryption
  • SQLite storage
  • Jinja templates

Node.js Version

Modern JavaScript implementation with Express, TweetNaCl encryption, and EJS templates. Ideal for Node.js environments and JavaScript-first projects.

  • Node.js + Express
  • TweetNaCl encryption
  • SQLite storage
  • EJS templates

Practical Use Cases

Sending secret notes can be incredibly useful in various contexts where privacy and confidentiality are paramount:

🔒 Personal Info

Sharing sensitive details like passwords, PINs, or recovery access codes with trusted family members safely.

💼 Business Environments

Exchanging contract details, corporate negotiation points, or HR actions without leaving an accidental leak window.

📰 Journalism & Whistleblowing

Exchanging classified elements with anonymous sources to ensure identity safety without leaving lingering logs.

⚖️ Legal Communications

Attorneys exchanging time-sensitive data with clients where verification is needed but records must remain clear.

🛠️ Tech & Security

IT managers provisioning temporary administrative system access credentials that shouldn't be saved long term.

🏥 Healthcare Providers

Transmitting regulatory compliant personal health indexes securely to patients without leaving lingering cached records.

Local Installation

Choose the implementation you want to run locally. Both Flask and Node.js versions are available side by side.

Flask Version

Classic Python implementation with Flask, Fernet encryption, and SQLite.

# Clone the Flask repository
git clone https://github.com/ProfJordan/secret-note.git

# Install dependencies
pip install -r requirements.txt

# Initialize the database
python db-setup.py

# Start the application
flask run
Open Flask Repo

Node.js Version

Modern Node.js implementation with Express, sqlite3, and TweetNaCl encryption.

# Clone the Node.js repository
git clone https://github.com/ProfJordan/secret-note-js.git

# Install dependencies
npm install

# Initialize the database
npm run setup-db

# Start the application
npm start
Open Node.js Repo

Usage Note:

Enter your message, optionally provide a custom salt, and submit. The app returns a single-use URL that self-destructs after reading.

Built With

Flask Version

🐍 Python 🌶️ Flask 🛠️ Cryptography (Fernet) 🗄️ SQLite3 📄 Jinja 🌐 HTML5

Classic Python stack for server-rendered secret notes and cryptographic storage.

Node.js Version

🟢 Node.js ⚡ Express 🔐 TweetNaCl 🗄️ SQLite3 🧩 EJS 🌐 HTML5

Modern JavaScript stack for a lightweight, API-friendly secret note app.