Onelink Documentation

Welcome to the developer documentation for Onelink, an experimental link-in-bio tool built with Nuxt 3.

Onelink is a stateless profile page generator. Unlike traditional tools that store user data in a backend database, Onelink compresses the user's profile data (name, bio, links, social handles) into a single Base64 encoded string that lives directly in the URL query parameters.

Key Features

  • Stateless Architecture: No database required. The state is the URL.
  • Nuxt 3 & Vue 3: Built on the modern Vue ecosystem.
  • Tailwind CSS: Styled for speed and customization.
  • Real-time Preview: A split-pane builder to see changes instantly.
  • Drag-and-Drop: Reorder external links easily using vuedraggable.

How it Works

  1. Build: Users enter their details in the builder interface (/).
  2. Encode: The application converts the JSON data object into a compressed Base64 string.
  3. Share: The user gets a unique link (e.g., /1?data=eyJ...).
  4. Decode: When visiting the link, the application reads the data query parameter, decodes it, and renders the profile.

Roadmap

As noted in the project README:

  1. Templates: Creation of different visual layouts (currently supports /1 template).
  2. Refactoring: improvements to boilerplate code.