https://github.com/abdibrokhim/notlink
The open-source blazingly fast self-hostable URL shortener ever. Written in Rust 🦀
https://github.com/abdibrokhim/notlink
nextjs opensource rust-lang typescript
Last synced: 9 months ago
JSON representation
The open-source blazingly fast self-hostable URL shortener ever. Written in Rust 🦀
- Host: GitHub
- URL: https://github.com/abdibrokhim/notlink
- Owner: abdibrokhim
- License: agpl-3.0
- Created: 2025-02-01T22:34:23.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-27T22:12:10.000Z (over 1 year ago)
- Last Synced: 2025-10-01T21:47:33.914Z (9 months ago)
- Topics: nextjs, opensource, rust-lang, typescript
- Language: Rust
- Homepage: https://notl.ink
- Size: 2.01 MB
- Stars: 99
- Watchers: 2
- Forks: 15
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
The Fastest URL Shortener Ever
Super Simple. Blazingly Fast. Open Source.
Report Bug
·
Request a Feature
·
Join us on Discord
·
Follow us on X
*
⭐ If you find notlink interesting, consider starring this repo to help spread the word.*
notlink is officially live on Product Hunt!
[](https://cards.producthunt.com/cards/products/992403)
## About The Project
This is notlink - a blazingly fast URL shortener ever built with Rust programming language. It is designed to be simple, secure, and fast. notlink is open-source and free to use. It is also fully customizable and can be self-hosted on your own server. [Join us!!](https://discord.gg/nUdcd9p8Ae).
[](https://youtu.be/ahZV6aAdnVI?si=N0O3RFYXE4Zz1Uhc)
## Built With
notlink is built with the following awesome open-source technologies:
- [Rust](https://www.rust-lang.org/)
- [Actix](https://actix.rs/)
- [Diesel](http://diesel.rs/)
- [Shuttle](https://shuttle.dev/)
- [Neon](https://neon.tech/)
- [NextJS](https://nextjs.org/)
- [Typescript](https://www.typescriptlang.org/)
notlink's UI could be found in [this repo](https://github.com/abdibrokhim/notlink-ui)
## Features
1. **Shorten URLs:**
Convert long URLs into short, easy-to-share links.
2. **Data Encryption:**
Encrypt stored URLs to enhance security and protect user data.
3. **Expiration Dates:**
Enable URLs to expire after a certain date or number of uses.
4. **API Access:**
Provide a minimal RESTful API for programmatic access to the URL shortener.
## Roadmap
1. **Custom URL Aliases:**
Allow users to create custom shortened URLs.
2. **QR Code Generation:**
Automatically generate QR codes for each shortened URL.
## Quick Start
Clone the repository:
```shell
git clone https://github.com/abdibrokhim/notlink.git
```
Install the dependencies with:
```shell
cargo install
```
Copy the `.env.example` file to `.env`:
```shell
cp .env.example .env
```
Replace with your stuff:
```shell
DATABASE_URL=postgresql://...:...@.../...?sslmode=require
CRYPTO_KEY=...
HOST=...
```
Generate a secure random key (you can use openssl command line):
```shell
openssl rand -hex 32
```
Run the development server with:
```shell
cargo shuttle run
```
Send request here: [http://localhost:8000](http://localhost:8000).
You may try to run the tests with. But there's no tests yet, lol.
Anyway refer to [APITESTS.md](./APITESTS.md) for examples of how to test the API endpoints.
## Tutorial 🥳
Tutorial is available on [TUTORIAL.md](https://github.com/abdibrokhim/notlink/blob/main/TUTORIAL.md). Check it out!!
For the video tutorial, you can check it out on [YouTube](https://youtu.be/Mhz_eVH3XnQ?si=fX6GqIq79QGq6C69)
[](https://youtu.be/Mhz_eVH3XnQ?si=ZhmY5BtrsblCrjaS)
## Donate & Support
- [Support on Open Collective](https://opencollective.com/opencommunity)
- [Support on Patreon](https://www.patreon.com/abdibrokhim)
### Crypto
- Bitcoin: bc1qpylxaqwapk0tgdmpnnljj545z4lk2z9q5us6p6
- Ethereum: 0xb4a8e71d82e8Bf84a02C7770585F9cD8b267aDB9
- Solana: 4MpPHapcdb5MwRy57juUQ2wUt1EJo8BYqXsYKwSfCvz1
Wanna learn more about me? refer to [my official website](https://yaps.gg).
## Contributing
Contributing is highly encouraged!
Even if you are not planning to submit any code, joining our [Discord server](https://discord.gg/nUdcd9p8Ae) and providing feedback helps us a lot!
Check out our [CONTRIBUTING.md](./CONTRIBUTING.md) and find the appropriate repo above to contribute to.
## Open Community
Join the awesome community on [Discord](https://discord.gg/nUdcd9p8Ae)
## Credits
Logo made by Ibrohim Abdivokhidov (@abdibrokhim). Follow him on [LinkedIn](https://www.linkedin.com/in/abdibrokhim/) and/ or [X (twitter)](https://twitter.com/abdibrokhim)
## Star History
[](https://star-history.com/#abdibrokhim/notlink&Date)
*⭐ If you find notlink interesting, consider starring this repo to help spread the word.*
## Contributors ✨
Thanks goes to these wonderful people:
Made with [contrib.rocks](https://contrib.rocks).