Skip to main content

Self-destructing messages

Project description

ephemeral - Self-destructing messages

Ephemeral is a web application for sharing short messages. Messages can be opened only once, giving an instant feedback to recipient on whether the message was compromised(read by someone else) or not. This makes the app a reasonably secure, and convenient way to share secrets.

Highlights

  • Simple, easy-to-audit code
  • Messages are encrypted at rest

Installing

pip install ephemeral

After installation you can use the ephemeral.sh command to start the application (see below).

Running

Always put this application behind an HTTPS-terminating reverse proxy when exposing to public networks!

Ephemeral uses Redis as the data store. Assuming Redis is running on localhost,

EPHEMERAL_REDIS_HOST=localhost EPHEMERAL_SECRET_KEY=hunter2 ephemeral.sh 0.0.0.0:8080

will start the application listning on port 8080 on all network interfaces.

Point your browser at http://localhost:8080/add to add a message.

Developing

Prerequisites:

  • Python 3
  • pip

Editable installation in current environment

make develop

Running unit-tests

make test

Starting a development instance of the application

Start the application in development mode with debugging enabled:

make dev-server

Starting/stopping a development Docker stack

The development Docker (Compose) stack includes Redis container and an application container built from source.

Prerequisites:

  • Docker
  • docker-compose

(Re)Build the application image, start a stack in background, and show running containers:

make compose-build

make compose-up

make compose-ps

Stop and destroy running stack:

make compose-down

Running E2E tests

Prerequisites:

  • pipenv

Start a stack and run Behave tests against it:

make compose-up

make e2e-test

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for ephemeral, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size ephemeral-0.1.1.tar.gz (24.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page