Aldex is a personal, desktop-first web application for tracking music albums. It is an opinionated tool designed for the user who values manual control, intentional logging, and a private digital shelf over automation or social features.
- Albums are the only first-class entity.
- Low Friction > Feature Completeness.
- Manual Control > Automation.
- Desktop-First UX.
- Single-View Dashboard: A unified "Album Library" view acting as the central hub without complex navigation menus.
- Dynamic Grid: Adjustable album grid density (2-10 columns) to suit screen size and preference.
- Lifecycle Management: Distinct workflows for acquisition and listening progress:
- Acquisition: Wishlist vs. Library (Owned).
- Progress: Backlog, Active (listening), Completed.
- Visibility: Archive toggle to hide albums from default views.
- Fast Browsing: Optimized for quick filtering and visual scanning.
- External Integration: Seamless links to MusicBrainz and RateYourMusic without compromising privacy.
- Runtime: Bun
- Frontend: React + Vite
- Language: TypeScript
- Backend/Database: Convex
- Styling: Tailwind CSS + shadcn/ui
- Routing: TanStack Router
- Bun installed on your machine.
-
Clone the repository:
git clone <repository-url> cd aldex
-
Install dependencies:
bun install
-
Start the development server:
bun run dev
-
In a separate terminal, start the Convex backend:
bun run convex
src/components: React components, including UI primitives and feature-specific components.convex: Backend functions and schema definitions.memory-bank: Project documentation and context files.
This project is licensed under the GNU General Public License v3.0.