https://github.com/gomezbc/nanolink
NanoLink is a powerful URL management application built using Spring Boot, PostgreSQL, and Docker. This versatile tool allows users to create, store, and manage custom URL mappings efficiently. Think of it as a modern-day URL shortener with robust features.
https://github.com/gomezbc/nanolink
docker docker-compose spring-boot
Last synced: 5 months ago
JSON representation
NanoLink is a powerful URL management application built using Spring Boot, PostgreSQL, and Docker. This versatile tool allows users to create, store, and manage custom URL mappings efficiently. Think of it as a modern-day URL shortener with robust features.
- Host: GitHub
- URL: https://github.com/gomezbc/nanolink
- Owner: gomezbc
- License: apache-2.0
- Created: 2024-03-10T17:27:14.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-18T19:36:22.000Z (almost 2 years ago)
- Last Synced: 2025-05-07T02:47:23.229Z (about 1 year ago)
- Topics: docker, docker-compose, spring-boot
- Language: Java
- Homepage:
- Size: 396 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# TODO: change to postgre
# NanoLink πβ‘
NanoLink is a powerful URL management application built using Spring Boot π, PostgreSQL, and Docker π³. This versatile tool allows users to create, store, and manage custom URL mappings efficiently. Think of it as a modern-day URL shortener with robust features.
Key Features:
- **URL Mapping**: NanoLink enables users to associate long URLs with shorter, more manageable aliases.
- **REST API**: The provided **REST API** offers seamless CRUD (Create, Read, Update, Delete) operations for managing these mappings.
- **Database** Integration: NanoLink stores URL mappings in a **PostgreSQL** database, ensuring scalability and fault tolerance.
- **Containerization** : The entire application is packaged into a **Docker** container, simplifying deployment and maintenance.
Whether youβre sharing links on social media, tracking campaign performance, or simplifying complex URLs, NanoLink streamlines the process. Give it a try and experience the efficiency of concise, user-friendly links! π
## Getting started
### Clone the repo
```bash
git clone https://github.com/gomezbc/NanoLink.git && cd NanoLink
```
### Configure PostgreSQL connection
Add the following ENV variables to your OS.
```bash
export SPRING_DATASOURCE_URL: "jdbc:postgresql://postgres-db:5432/postgres"
export SPRING_DATASOURCE_USERNAME: postgres
export SPRING_DATASOURCE_PASSWORD: mysecretpassword
```
### Run the application
#### Maven
Build the application with Maven
```bash
mvn clean install
mvn compile
```
#### Docker π³
The docker compose file will create and configure a PostgreSQL container to connect to the application. Feel free to modify any value.
```bash
docker compose -f docker-compose.yml up -d
```