β‘ No database Β· π§© No backend server Β· π 100% open source Β· π«₯ Posts disappear over time
Experience Ephemeral Social here:
π https://ephemeral-social-test.vercel.app/
Ephemeral Social is a tiny, privacy-friendly social network where posts are intentionally not permanent. It is designed to be:
- Ephemeral β posts automatically disappear after a configurable lifetime
- Forkable β anyone can create their own instance in minutes
- Serverless β everything runs via GitHub Issues + Vercel Functions
- Open source β fully transparent, fully modifiable
- Lightweight β ideal for communities, classrooms, hacks, or experimentation
No login required, no endless archive, no algorithmic addiction β just short-lived thoughts flowing through a minimal, elegant interface.
Each visitor gets a unique local ID (e.g., esuser-83ba4f1d) stored in localStorage.
Posts appear under that ID instead of the userβs GitHub account.
Posts older than a defined age are closed or deleted, depending on your settings.
Environment-controlled logic:
CLEAN=ON
CLEAN_MODE=DELETE # or CLOSE
CLEAN_TIMER=48 # hoursThe system guarantees:
- no young posts are ever removed,
- minimal API calls (client-side throttling),
- deterministic behavior.
Users select topics they care about β feed automatically orders posts by relevance.
- Floating Action Button (FAB) for new posts
- FAB for feed refresh
- Full-screen composer overlay
- Smooth feed update (no flicker)
- Optional Military Green Theme for a tactical guerrilla-style interface
Each post = an Issue Tags = Labels Backend = GitHub API Everything transparent and auditable.
Custom colors, logos, themes, and domain are trivial to customize. Ideal for schools, companies, communities, activists, or friends.
Frontend (Vercel / GitHub Pages)
β
app.js (local identity + feed logic + composer + interest engine)
β
GitHub Issues API (public_repo token)
β
Vercel Serverless Functions (new-post, cleanup)
No servers, no databases, no vendor lock-in.
https://github.com/Mobrius/ephemeral-social
Your social networkβs feed will live inside Issues of this repo.
Then set these constants in app.js:
const GITHUB_OWNER = "your-username";
const GITHUB_REPO = "your-posts-repo";Press:
βDeployβ β Import GitHub Repo β Add Environment Variables
| Variable | Type | Example | Description |
|---|---|---|---|
GITHUB_TOKEN |
secret | ghp_abc123... | Must have public_repo permission |
CLEAN |
string | ON | Enables automatic post cleanup |
CLEAN_MODE |
string | CLOSE/DELETE | CLOSE keeps history, DELETE removes content |
CLEAN_TIMER |
number | 48 | Number of hours before posts expire |
Enjoy the experience β or customize it endlessly.
Clean, minimal, modern.
A tactical, guerrilla-inspired UI variant.
To enable manually:
<link rel="stylesheet" href="style-military.css">Or use the built-in theme switcher in the footer.
Cleanup is triggered by:
- Client-side call every CLEAN_TIMER hours, per browser
- Server-side filtering strictly removes only posts older than CLEAN_TIMER
This means:
β No risk of deleting younger posts β Minimal API usage β No need for Cron jobs β Distributed cleanup β effortless scalability
- Frontend β Vanilla JS + CSS + Vercel static hosting
- Backend β Vercel Serverless Functions
- Database β GitHub Issues
- Auth β Anonymous local identity (no GitHub login required)
/
βββ index.html
βββ style.css
βββ style-military.css
βββ app.js
βββ api/
βββ new-post.js
βββ cleanup.js
Contributions are welcome! Open an Issue or submit a PR β this project thrives on community forks and experimentation.
For custom-branded or commercial instances:
π Open a discussion here:
https://github.com/Mobrius/ephemeral-social/discussions
MIT β free to use, free to modify, free to fork.
Ephemeral Social was created to explore a different kind of social network: one that values impermanence, simplicity, and transparency over engagement farming.
You are free to fork it, break it, remix it, or build entire new ecosystems on top of it.
βNothing on the internet should last forever β except open source.β