Skip to content

SyntaxSidekick/color-palette-generator

Repository files navigation

🎨 Interactive Color Palette Generator

Vue.js Vite SASS JavaScript

A modern, interactive color palette generator built with Vue 3 and cutting-edge web technologies

πŸš€ Live Demo | πŸ“– Documentation | πŸ› Report Bug | ✨ Request Feature


✨ Features

🎯 Smart Color Generation - Generate palettes from keywords, hex codes, or named colors
🎲 Random Palette Generator - Create surprise color combinations with one click
πŸ’« Interactive UI - Smooth animations, hover effects, and responsive design
🌈 Gradient Suggestions - Auto-generated CSS gradients from your palette
πŸ‘€ Live Preview - Real-time UI preview with your color scheme
πŸ“‹ Copy to Clipboard - One-click copying of colors and gradients
πŸ’Ύ Export Functionality - Download palettes as JSON files
⚑ Modern Tech Stack - Vue 3 Composition API, Vite, and SCSS
πŸ“± Mobile Responsive - Perfect experience on all device sizes
🎨 Professional Design - Glass morphism and modern UI patterns

οΏ½ Screenshots

Main Interface

Main Interface

Generated Palette

Generated Palette

Mobile Responsive

Mobile View

οΏ½πŸš€ Quick Start

Prerequisites

  • Node.js (v16 or higher) - Download here
  • npm or yarn package manager
  • Modern web browser

πŸ”§ Installation

# Clone the repository
git clone https://github.com/f1ss1on/color-palette-generator.git

# Navigate to project directory
cd color-palette-generator

# Install dependencies
npm install

# Start development server
npm run dev

# Open your browser to http://localhost:3000

That's it! πŸŽ‰ Your color palette generator is now running locally.

🎯 How to Use

1. Generate from Keywords

Type any descriptive word and watch the magic happen:

  • ocean β†’ Beautiful blue tones
  • sunset β†’ Warm orange and pink hues
  • forest β†’ Rich green variations
  • vintage β†’ Muted retro colors

2. Use Color Codes

Enter specific colors for precise control:

  • Hex codes: #3498db, #e74c3c
  • Named colors: blue, crimson, forestgreen
  • RGB values: rgb(52, 152, 219)

3. Random Generation

Click the Randomize button for surprise combinations - perfect for creative exploration!

4. Copy & Export

  • Copy Colors: Click any color card to copy hex codes
  • Copy Gradients: Click gradient previews to copy CSS
  • Export JSON: Download complete palette data

πŸ› οΈ Available Scripts

Command Description
npm run dev πŸš€ Start development server with hot reload
npm run build πŸ“¦ Build optimized production bundle
npm run preview πŸ‘€ Preview production build locally
npm run lint πŸ” Run ESLint for code quality
npm run format ✨ Format code with Prettier

πŸ—οΈ Project Structure

src/
β”œβ”€β”€ components/          # Vue components
β”‚   β”œβ”€β”€ ColorCard.vue   # Individual color display
β”‚   β”œβ”€β”€ GradientCard.vue# Gradient display
β”‚   β”œβ”€β”€ PaletteControls.vue # Input and controls
β”‚   └── PalettePreview.vue  # UI preview
β”œβ”€β”€ styles/             # Global styles
β”‚   β”œβ”€β”€ main.scss      # Main stylesheet
β”‚   └── variables.scss # SCSS variables and mixins
β”œβ”€β”€ utils/             # Utility functions
β”‚   └── colorUtils.js  # Color manipulation utilities
β”œβ”€β”€ App.vue           # Main application component
└── main.js          # Application entry point

🎨 How to Use

  1. Generate from Keywords: Type any word (e.g., "ocean", "sunset") and click Generate
  2. Use Color Codes: Enter hex codes (#3498db) or named colors (blue)
  3. Random Generation: Click Randomize for surprise color combinations
  4. Copy Colors: Click any color card to copy the hex code
  5. Export Palette: Use the Export JSON button to save your palette

πŸ—οΈ Tech Stack

Frontend Build Tools Styling Code Quality
Vue 3 Vite SCSS ESLint
Composition API Hot Reload CSS Modules Prettier
Reactive System Tree Shaking Glass Morphism Git Hooks

πŸ”§ Customization

🎨 Adding New Color Generation Methods

Extend the colorUtils.js file to add custom palette algorithms:

// src/utils/colorUtils.js
export function generateFromMood(mood) {
  const moodMaps = {
    calm: ['#e3f2fd', '#bbdefb', '#90caf9'],
    energetic: ['#ff5722', '#ff9800', '#ffc107'],
    mysterious: ['#1a1a2e', '#16213e', '#0f3460']
  }
  return moodMaps[mood] || generateRandomPalette()
}

🎭 Custom Styling

Modify SCSS variables for your brand:

// src/styles/variables.scss
$primary-gradient: linear-gradient(90deg, #your-brand, #secondary);
$glass-bg: rgba(255, 255, 255, 0.08);
$accent-color: #your-accent;

🧩 Adding Components

Create new Vue components in src/components/:

<!-- src/components/YourComponent.vue -->
<template>
  <div class="your-component">
    <!-- Your template -->
  </div>
</template>

<script>
export default {
  name: 'YourComponent',
  // Component logic
}
</script>

🀝 Contributing

We love contributions! Here's how you can help make this project even better:

πŸš€ Quick Contribution Guide

  1. Fork the repository
  2. Clone your fork: git clone https://github.com/YOUR_USERNAME/color-palette-generator.git
  3. Create a feature branch: git checkout -b feature/amazing-feature
  4. Make your changes
  5. Test your changes: npm run dev
  6. Commit your changes: git commit -m 'Add amazing feature'
  7. Push to your branch: git push origin feature/amazing-feature
  8. Submit a Pull Request

πŸ› Found a Bug?

  1. Check if it's already reported in Issues
  2. If not, create a new issue with:
    • Clear description of the bug
    • Steps to reproduce
    • Expected vs actual behavior
    • Screenshots (if applicable)

πŸ’‘ Feature Requests

Have an idea? We'd love to hear it! Open an issue with:

  • Clear description of the feature
  • Use case examples
  • Mockups or sketches (if applicable)

πŸ“Š Project Stats

GitHub stars GitHub forks GitHub issues GitHub license

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

🌟 Acknowledgments & Credits

  • πŸ–– Vue.js Team - For the incredible framework
  • ⚑ Vite Team - For lightning-fast development experience
  • 🎨 Font Awesome - For beautiful icons
  • 🎭 Bootstrap Team - For utility classes
  • 🎨 Design Community - For endless inspiration
  • πŸ’» Open Source Community - For making this possible

πŸ“¬ Connect & Support

Found this helpful? Give it a ⭐️

Report Issues β€’ Request Features β€’ Contribute


Built with ❀️ using Vue 3, Vite, and modern web technologies by f1ss1on

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors