Your own private, self-hostable digital vault β powered by GitHub Auth and S3. Create directories, upload files, write beautiful markdowns, and access it all from a minimal web UI. Perfect for dotfiles, resumes, personal notes, and more β with support for public/private access control.
π Live Demo: lnx.parthkapoor.me
- π GitHub Authentication with Admin access control
- πͺ£ S3-Backed Storage (DigitalOcean Spaces, AWS S3, etc.)
- π Directory and File Management via Web
- π Markdown Editor for notes, resumes, and guides
- π Public/Private Access for files and folders
- π One-Click Deploy on Vercel
- Frontend: Next.js (TypeScript)
- Auth: Better Stack Auth
- Storage: S3-compatible (Spaces, AWS, etc.)
- Cache: Upstash Redis
- Markdown: MDX Rendering
git clone https://github.com/parthkapoor-dev/lnx-vault.git
cd lnx-vault
Create a .env
file in the root:
# Your live or local URL
NEXT_PUBLIC_SITE_URL="http://localhost:3000"
# Better Auth
BETTER_AUTH_SECRET=""
BETTER_AUTH_URL="http://localhost:3000"
# GitHub OAuth App
GITHUB_CLIENT_ID=""
GITHUB_CLIENT_SECRET=""
GITHUB_ADMIN_EMAIL=""
# Upstash Redis
UPSTASH_REDIS_REST_URL=""
UPSTASH_REDIS_REST_TOKEN=""
# S3 / Spaces
SPACES_KEY=""
SPACES_SECRET=""
SPACES_BUCKET=""
π‘ You can use DigitalOcean Spaces or any S3-compatible provider.
npm install
npm run dev
Now open http://localhost:3000 in your browser.
- Push the repo to your GitHub
- Go to vercel.com
- Click "Import Project", choose your repo
- Set the environment variables in Vercel dashboard
- Click Deploy
Done π Your personalized cloud vault is now live!
By default, only the GitHub account marked as "admin" in your .env
-connected auth logic can:
- Create/upload/edit files & markdowns
- Add/remove directories
- Toggle public/private flags
MIT Β© Parth Kapoor
If this helped you organize your digital life β consider giving it a β on GitHub!