CipherMuse - Kiroween Hackathon Submission
Inspiration
The idea for CipherMuse came from discovering the Kiroween hackathon's "Frankenstein" category and realizing I could combine my interests in AI, cryptography, and Halloween aesthetics. The concept of hiding secrets in plain sight - steganography - has always fascinated me.
The inspiration was to create something that stitches together modern AI technology with classical cryptography, wrapped in a Halloween theme that makes these complex concepts more approachable and engaging.
What it does
CipherMuse is an AI-powered steganography platform with Halloween theming that allows users to:
Generate Halloween Content: Create spooky images using Stable Diffusion v1.5 with four distinct themes (Spooky, Gothic, Witch, Zombie) and atmospheric audio using MusicGen-Small
Hide Secret Messages: Encrypt messages with AES-256 and embed them invisibly into generated content using LSB steganography techniques
Secure Authentication: Register and login with encrypted password storage and session management
Personal Galleries: Store and manage encrypted files in user-specific galleries
Multi-format Support: Work with various file formats including PNG, JPG, BMP for images and WAV, MP3, M4A for audio
Extract Hidden Messages: Decrypt and retrieve secret messages from steganographic files
How we built it
Planning with Kiro
I used Kiro's spec-driven development approach to plan the project architecture. I created comprehensive specifications for UI consistency, defining requirements, design patterns, and 8 correctness properties for maintaining consistent styling across the application.
Project Structure
Backend: Python Flask application in the backend/ directory
Frontend: React application in the src/ directory with components, pages, and styling
AI Models: Integration with Stable Diffusion v1.5, MusicGen-Small, and SwinIR for content generation and enhancement
Styling System: CSS variables with dark orange theme colors (#D97642, #C96A3D, #B85E38)
Kiro Integration
Created comprehensive UI specifications with detailed requirements and design architecture. Defined property-based testing strategy with 8 correctness properties. Used Kiro's conversational coding for UI component development. Implemented centralized CSS variable system for maintainable theming across all components.
Challenges we ran into
UI Consistency Challenge
The main challenge I focused on was maintaining consistent button colors and styling across all application pages. This led me to explore Kiro's spec-driven development approach and create detailed specifications for UI consistency.
Learning Kiro's Methodology
Adopting Kiro's spec-driven development was a learning curve. Understanding how to define correctness properties for UI elements and structure comprehensive specifications required research and experimentation.
Halloween Theme Design
Balancing the Halloween aesthetic with functional usability was challenging. The dark orange color scheme needed to be atmospheric while maintaining good contrast and accessibility standards.
Architecture Planning
Designing a system that could theoretically integrate AI generation, steganography, and encryption while maintaining clean separation of concerns required careful architectural thinking.
Technical Complexity
Understanding the theoretical integration of multiple technologies - AI models, cryptographic libraries, and steganography algorithms - presented a significant learning challenge.
Accomplishments that we're proud of
Kiro Spec-Driven Development: Successfully created comprehensive UI specifications with 8 correctness properties for button consistency
Project Architecture: Designed a cohesive system that combines AI, cryptography, and web technologies in the "Frankenstein" spirit
CSS Variable System: Implemented centralized theming with dark orange Halloween colors for maintainable styling
Comprehensive Planning: Created detailed specifications covering requirements, design patterns, and testing strategies
Halloween Theme Integration: Built an atmospheric Halloween aesthetic that enhances the "hidden secrets" concept
Learning Achievement: Successfully adopted Kiro's methodology for systematic development and UI consistency
What we learned
Kiro Development Methodology
Spec-Driven Development: Learned to create comprehensive specifications before implementation, including detailed requirements and design architecture
Property-Based Testing: Discovered how to define correctness properties for UI consistency and systematic validation
CSS Architecture: Understood centralized theming with CSS variables for maintainable design systems
Technical Implementation
AI Model Integration: Successfully integrated multiple AI models (Stable Diffusion, MusicGen, SwinIR) into the web application
Steganography Implementation: Built LSB (Least Significant Bit) steganography with pseudo-random positioning for secure message embedding
Cryptography Integration: Implemented AES-256 encryption with secure key derivation for message protection
Full-Stack Development: Built complete Flask backend with React frontend integration
Project Planning
Systematic Approach: The value of upfront specification and architectural planning
Testing Strategy: How property-based testing can create more robust applications
User Experience: Balancing complex technical concepts with intuitive design
Documentation: The importance of comprehensive specifications for maintainable projects
What's next for CipherMuse
Enhancement Phase
Performance Optimization: Improve AI model loading times and memory usage
Advanced Features: Add batch processing for multiple files and enhanced encryption options
Testing Expansion: Implement the full property-based testing strategy defined in the specifications
User Experience: Refine the interface based on user feedback and usability testing
Feature Expansion
Additional AI Models: Explore integration with other AI generation models
Enhanced Encryption: Research other powerful cryptography algorithms for future-proofing
Mobile Experience: Optimize the interface for mobile devices
Performance Optimization: Implement efficient model loading and caching strategies
The systematic approach learned through Kiro's methodology provides a solid foundation for these future developments.
Log in or sign up for Devpost to join the conversation.