Prototype for Firefox content sharing — lets users create and share collections of links. Built with Django 6, Python 3.13, managed with uv.
Requires Docker Desktop. Everything else (Python, Postgres) runs inside Docker.
make setup # generate .env with a random SECRET_KEY
make up # build and start app and PostgresThe app will be available at http://localhost:8000. Migrations run automatically on make up.
Requires Python 3.13+, uv, and a running PostgreSQL instance.
make setup # install dependencies and generate .envSet DATABASE_URL in .env to your local Postgres connection string, e.g.:
DATABASE_URL=postgres://localhost/fxsharing
Then:
make migrate # apply migrations
make run # start the dev serverThe /__lbheartbeat__, /__heartbeat__, and /__version__ endpoints are provided by the python-dockerflow library.
GET /__lbheartbeat__— load balancer health checkGET /__heartbeat__— application health checkGET /__version__— deployed version infoPOST /create_share— create a share (JSON body, seeshare_schema.pyfor schema)GET /<uuid>— view share pageGET /api/<uuid>— share data as JSON
This is an early prototype. Known gaps before production:
- No authentication (FxA integration planned)
- No rate limiting
- OpenGraph scraping is synchronous — will move to Celery workers
- No tests