An interactive web app that lets users upload a selfie, generate unique AI images, and share them on social media—created for Atlantic Štark’s “Najlepše želje” campaign to drive engagement and brand reach.

Project overview

NaPola a Skroz — Interactive AI Web App for a Creative Contest

NaPola a Skroz is an interactive web application built for the Atlantic Štark brand as part of the “Najlepše želje” promotional campaign. The idea was simple and fun: give people a way to create playful, personalized images and share them instantly—boosting engagement and brand visibility across social platforms.

Concept & Goals

Blend creativity, entertainment, and the viral potential of social media. Inside the app, users can:

  • Upload a selfie (or pick from starter photos).
  • Generate a unique AI image using predefined styles and filters.
  • Preview, save, and share directly to social networks.
  • Enter the activation automatically and compete for prizes.

The experience is intentionally fast, simple, and visually polished to encourage maximum participation.

Technology Stack

Frontend

  • Laravel Blade Templates for modular, maintainable views
  • HTML5 / CSS3 (SCSS) styled to match the campaign brand
  • JavaScript (ES6) for interactivity, form validation, and dynamic UI
  • AJAX (Fetch API) for smooth, no-reload requests
  • Lottie animations as lightweight loaders to reduce perceived wait time

Backend

  • Laravel (PHP 8) using an MVC architecture for stability and clean structure
  • MySQL to store users, generated images, and share events
  • OpenAI API (Vision + DALL·E) for content understanding and image generation
  • ImageMagick for server-side image processing and optimization

Integrations

  • Social sharing (Facebook, Instagram, WhatsApp, Viber): custom share links + per-image Open Graph tags
  • Google Analytics for engagement and funnel tracking
  • GDPR Cookie Consent for privacy compliance

How It Works

  1. Landing & CTA — clear call to action (“Create your NaPola a Skroz image”).
  2. Upload/Capture — the user uploads a photo or takes one on the spot.
  3. AI Pipeline
    • The image is normalized on the server (ImageMagick).
    • OpenAI Vision detects key content and prepares a targeted prompt.
    • DALL·E generates a personalized transformation.
  4. Result & Actions — the user sees the final image (with an animated loader during processing), can download it, and share instantly.
  5. Analytics — the system logs created images, shares, and downloads for campaign reporting.

Challenges & Solutions

  • Generation speed — We optimized the pipeline by sending lighter preview assets for AI processing first, then rendering full-quality images for download.
  • Inconsistent source photos — Automatic scaling and smart cropping ensure consistent output regardless of device or orientation.
  • Social previews — Each generated image gets a unique detail page with correct Open Graph tags so previews render perfectly on social platforms.

UX & Design Approach

  • A minimalist, warm visual style aligned with Najlepše želje branding
  • Large, central CTAs to reduce friction and guide users forward
  • Lottie loaders to smooth over waiting times
  • Full mobile responsiveness for phones and tablets

Campaign Results

  • High engagement: strong volume of created, shared, and downloaded images
  • Positive user feedback: fun, easy, and fast to use
  • Expanded reach: organic shares amplified brand visibility without extra ad spend

My Role

  • End-to-end backend development (Laravel, APIs)
  • Frontend implementation and UX optimizations
  • OpenAI integration for vision + image generation
  • Social sharing implementation and meta-tag setup
  • Performance testing and device/browser optimizations

Conclusion

NaPola a Skroz shows how AI, thoughtful web development, and creative marketing can combine into a playful, share-worthy experience. With a fast app, on-brand design, and smart integrations, we delivered a tool that entertained users and delivered measurable value to the brand.

Compact Version (optional)

Overview: An AI-powered selfie app for Atlantic Štark’s Najlepše želje campaign. Users upload a photo, generate a unique AI image, and share it instantly.
Tech: Laravel (PHP 8), Blade, MySQL, ES6, AJAX, OpenAI Vision + DALL·E, ImageMagick, Lottie, GDPR consent.
Highlights: Optimized generation pipeline, consistent output across devices, per-image Open Graph pages for perfect social previews.
Impact: High engagement, positive feedback, and expanded organic reach.

Custom Tools & Logic

Custom-built plugins, logic, and automations that make the site stand out.
  • Upload → Normalize Pipeline — image validation, EXIF-safe rotation, smart crop/resize for consistent outputs.
  • Vision-Aware Prompt Builder — OpenAI Vision parses selfie context; dynamic prompt templates drive DALL·E styles.
  • Style Presets & Brand Frames — predefined art styles, color palettes, and optional branded overlays/stickers.
  • Preview→Final Render Flow — fast low-res preview for speed, queued full-quality render for downloads.
  • Share-Ready Pages — per-image detail URL with correct Open Graph tags for perfect social previews.
  • Direct Share Links — one-tap sharing to Facebook, Instagram, WhatsApp, Viber with UTM tagging.
  • Watermark & Safety Guard — optional watermarking; content moderation and size/type checks before generation.
  • Job Queue & Retry/Backoff — resilient generation with logging, error capture, and automatic retries.
  • CDN & Caching Strategy — cached image variants (thumb, preview, full) for low latency and traffic spikes.
  • Analytics Events — granular tracking for uploads, generations, shares, and downloads for campaign reporting.
  • Consent & Privacy Hooks — GDPR consent logging and easy opt-out for data and images.
  • Lottie UX Enhancements — lightweight loaders and micro-feedback to reduce perceived wait times.
  • Ivan Ignjatovic - MrBrabus - Wordpress - Webflow - eCommerce
    0
    1
    2
    3
    4
    01
    Strategy & Planning

    Establishing a clear direction and foundation

    Aligned campaign goals, audience, and sharing mechanics into a simple funnel: fast selfie→AI render→one-tap share, with clear success metrics and privacy/consent baked in.

    02
    Design & Structure

    Building a flexible and consistent design system

    Modular Blade components and reusable UI patterns matched the campaign brand; responsive layouts, clear states (upload→preview→share), and Lottie-driven loaders kept the experience consistent and fast across devices.

    03
    Development & Functionality

    Turning concepts into powerful features

    Built a resilient Laravel pipeline for upload→normalize→Vision prompt→DALL·E render, with queued jobs, retries, branded overlays, and per-image OG pages plus one-tap share links across platforms.

    04
    Optimization & Launch

    Ensuring performance, stability, and SEO readiness

    Tuned image/CDN caching and queue concurrency for peak traffic, compressed assets and lazy loads, added per-image OG/metadata, instrumented analytics, and ran cross-device QA with GDPR consent checks for a smooth, compliant launch.

    Project results

    The campaign delivered strong engagement: thousands of selfie uploads, high completion from upload → AI render → share, and steady organic reach as user posts propagated across platforms. The app handled peak traffic without downtime thanks to queueing and CDN caching, while analytics showed positive sentiment and repeat participation. Overall, the experience boosted brand visibility and gave the client a scalable, reusable activation model.

    Stay updated with our latest web development insights

    Get exclusive tips, strategies, and industry trends delivered straight to your inbox

    By signing up, you agree to our privacy policy and communication terms
    Thank you for subscribing to our newsletter!
    An error occurred. Please try submitting your email again.