Your personal Color LUT management system
This project helps you organize and manage your color Look-Up Tables (LUTs) with style and efficiency.
Fire up the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun devVisit http://localhost:3000 to see your LUT library in action!
- 📁 Organize your LUTs in collections
- 🔍 Preview LUTs on sample images
- 🔄 Import/Export functionality
- 🎯 Quick search and filtering
- 🔐 Secure authentication
- 💾 Cloud storage with MongoDB
- Next.js 14+ (App Router)
- TypeScript
- MongoDB
- NextAuth.js
- TailwindCSS
- Shadcn/ui Components
src/
├── app/ # Next.js App Router directory
│ ├── api/ # API routes
│ │ ├── auth/ # Authentication endpoints
│ │ └── luts/ # LUT management endpoints
│ ├── auth/ # Authentication pages
│ └── docs/ # Documentation pages
├── components/ # Reusable UI components
├── lib/ # Core utilities and configurations
├── utils/ # Helper functions
└── assets/ # Static assets
-
Clone the repository
-
Install dependencies:
npm install
-
Configure environment variables:
- Copy
.env.exampleto.env.local - Required variables:
MONGODB_URI: Your MongoDB connection stringNEXTAUTH_SECRET: JWT secret for authenticationNEXTAUTH_URL: Your application URL
- Copy
-
Run the development server:
npm run dev
The project uses NextAuth.js for authentication with the following features:
- Secure session management
- JWT-based authentication
- Protected API routes
- Role-based access control
POST /api/auth/[...nextauth]- NextAuth.js authentication endpoints
GET /api/luts- Retrieve LUT collectionPOST /api/luts- Upload new LUTPUT /api/luts/:id- Update LUT metadataDELETE /api/luts/:id- Remove LUT
We welcome contributions! Please see our Contributing Guide for details on how to:
- Submit bug reports
- Request features
- Submit pull requests
- Follow our code style guidelines
This project is licensed under the MIT License - see the LICENSE file for details.
+------------+
/ /|
/ / |
/ / |
+------------+ |
| | +
| | /
| LUT | /
| CUBE |/
+------------+
Thanks for checking out our LUT Library!
Where colors come to life, one table at a time.
💡 Fun fact: This ASCII art represents a 3D LUT cube, which is how 3D LUTs store their color transformation data. Each point in the cube represents how one color should be mapped to another!