MagLit has been sponsored by Vercel. Many thanks!

MagπŸ”₯Lit

πŸ”₯ MagLit - A **super fast** and **easy-to-use** **Free** and **Open Source Privacy Respecting Encrypted** Magnet/HTTP(s) Link Shortener with **Password Protection** πŸ”₯ ### https://maglit.me
# πŸ”₯ Featured on [Awesome Open Source](https://awesomeopensource.com/) and [Awesome Privacy](https://github.com/pluja/awesome-privacy#link-shorteners) ## MagLit Features βœ… 100% Easy to use\ βœ… 100% Free and Open Source\ βœ… 100% Encrypted\ βœ… 100% Private\ βœ… 0% Personal Data stored New Features πŸ†• MagLit now supports custom links! πŸ†• MagLit now lets you generate QR Codes for your lit links! **WYSIWYG:** [MagLit builds are fully verifiable: The code in this repository is the same code that's deployed on MagLit.me, Nothing added, nothing ripped, so you know it's 100% trusted ;) ](https://github.com/NayamAmarshe/MagLit/deployments) ## Self Hosting **PREPARE** MagLit uses Firebase Firestore as a database. You must first create a new Firebase project, then a file with the name `.env.local` in root directory of the project and fill the details as mentioned in `.env.local.example`. This step is a **hard requeriment** and any change to this file, **requires a rebuild to the project from scratch** (either through npm install/npm run dev or by using the docker steps) Clone the project and install dependencies using: ```bash npm install ``` You need npm or yarn installed for this. Then, run the development server: ```bash npm run dev ``` **DOCKER:** > [!IMPORTANT] > Make sure the .env.local file is available before the build. ```bash # BUILD AND RUN IMAGE USING NPM npm run docker:build # RUN IMAGE npm run docker # OR RUN IN DETACHED MODE npm run docker:d ``` Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. You can start editing the page by modifying `pages/index.js`. The page auto-updates as you edit the file. [API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/xxxxxx](http://localhost:3000/api/xxxxxx). This endpoint can be edited in `pages/api/xxxxxx.js`. The `pages/api` directory is mapped to `/api/*`. Read more about [API routes](https://nextjs.org/docs/api-routes/introduction). ### πŸ”₯ https://maglit.me πŸ”₯