Hi, I'm Eli ๐Ÿ‘‹

Building websites and AI automations for founders who mean business.

Sound familiar?

Where you are now
Buried in work that has nothing to do with your actual work.
Everything takes longer than it should.
Lately it's everything except the thing you started this for.
The other side
Everything connected and running without you.
Only what you need, nothing you don't.
Back to the work you actually care about.
Where you are now
Buried in work that has nothing to do with your actual work.
Everything takes longer than it should.
Lately it's everything except the thing you started this for.
The other side
Everything connected and running without you.
Only what you need, nothing you don't.
Back to the work you actually care about.
3 services. 1 studio. No handoffs.
(function(){ var current = 0; var cards = [document.getElementById('ef-card-0'), document.getElementById('ef-card-1')]; var dots = [document.getElementById('ef-dot-0'), document.getElementById('ef-dot-1')]; var wrap = document.getElementById('ef-wrap'); function show(idx){ // No display:none โ€” only opacity/visibility change = zero reflow cards[0].className = 'ef-mob-card ' + (idx===0 ? 'ef-on' : 'ef-off'); cards[1].className = 'ef-mob-card ' + (idx===1 ? 'ef-on' : 'ef-off'); dots.forEach(function(d,i){ d.classList.toggle('active', i===idx); }); current = idx; } function lockHeight(){ // Both cards visible in DOM โ€” just measure and fix wrap height // Temporarily make both ef-on to measure cards[0].className = 'ef-mob-card ef-on'; cards[1].className = 'ef-mob-card ef-on'; cards[1].style.position = 'absolute'; cards[1].style.visibility = 'hidden'; var h = Math.max(cards[0].offsetHeight, cards[1].offsetHeight); cards[1].style.position = ''; cards[1].style.visibility = ''; wrap.style.height = h + 'px'; show(current); } window.efFlip = function(){ show(current === 0 ? 1 : 0); }; window.efDot = function(idx,e){ e.stopPropagation(); show(idx); }; // Init: card-1 hidden, card-0 shown show(0); // Lock height after fonts load if(document.fonts && document.fonts.ready){ document.fonts.ready.then(lockHeight); } else { setTimeout(lockHeight, 500); } window.addEventListener('resize', function(){ wrap.style.height = ''; setTimeout(lockHeight, 100); }); })();

I know this because I run my own business in Bulgaria. I've been on both sides โ€” the one needing the design, and the one building it. That's exactly why I started Ellable.

Tools
Website designRedesignsNo-code buildsPrototypes
What I do
Website design and full redesigns - from strategy to launch
No-code builds, vibe coding, and rapid prototypes
Individual pages or full site - whatever the project needs
Optimised for mobile, desktop, and actual humans
Tools
Workflow automationMake.comAI content tools
What I do
Workflow automations that run without you
AI agents that handle specific tasks end to end
AI avatars for video content at scale
Connecting your tools so they actually talk to each other
Tools
Brand identityLogoSocial mediaMeta AdsVideo editing
What I do
Brand identity and logo design from scratch
Social media management and content creation
Short-form video editing for Reels and TikTok
Meta advertising strategy and campaign management
function srvTab(id,btn){ document.querySelectorAll('.srv-tab').forEach(function(b){b.classList.remove('active');}); document.querySelectorAll('.srv-panel').forEach(function(p){p.classList.remove('active');}); btn.classList.add('active'); document.getElementById('srv-'+id).classList.add('active'); }
6+years in design
& brand
2+years working with
AI tools daily
3 in 1Web, AI & Brand โ€”
one studio

This is what "yes, exactly that" looks like

A selection of projects we loved building โ€” and clients loved launching.

GreenHarvest UX project
Seamless Farm-to-Consumer Experience

87.5% user satisfaction achieved through intuitive design and a seamless e-commerce flow.

UX/UIE-CommerceMobile App
Brand Consistency project
Brand Consistency Across Product Lines

Visual identity system for multiple product lines - Activia, Danone, PediaKid and more.

BrandingSocial MediaDesign System
Hygge The Game brand identity and e-commerce
Brand Identity & Visual System

Complete brand identity and mobile-first e-commerce build for a personalised board game - from visual system to live site.

BrandingUI/UXE-Commerce
Coming soon
Antik Holiday โ€” Website Redesign

Full website redesign for a boutique travel agency - strategy, UX and no-code build.

Web DesignUX StrategyNo-code
Coming soon

This is what happened when we worked together

"

We've been working with Elitsa for over six months. Wouldn't hesitate to recommend her โ€” with both hands.

DK
Dimitar KolevZoomagazin Bars
"

Professional, precise, and genuinely easy to work with. She handled the business cards, brochures, and logo, and gave us clear direction for the overall brand strategy โ€” everything came together as one coherent identity.

TP
Toni PopovaFounder, Marketing Agency
"

The automation alone saved us more hours than I want to admit. Documents come in, data gets extracted, everything lands where it needs to be โ€” automatically. And the branding finally made us look like one coherent business.

RK
Ruslana K.Akaunt Consult
"

Our profiles existed but weren't doing anything for us. Two weeks with Elitsa and everything looked different โ€” the visuals, the voice, the homepage we almost didn't ask for. Clients notice it. Our team still talks about it.

AH
Antik HolidaySocial Media & Web
"

One hour on a call and I left with a clear plan and actual next steps. Not generic advice โ€” direction that fit my specific situation. That's rare.

PC
Alex M.Owner, Padel Club
(function(){ var track = document.getElementById('testi-track'); var dotsWrap = document.getElementById('testi-dots'); var cards = track.querySelectorAll('.testi-card'); var total = cards.length; var current = 0; var paused = false; var resumeTimer = null; var animFrame = null; var speed = 0.6; // px per frame var pos = 0; var cardW = 0; var gap = 20; // Enable pointer events on cards for interaction cards.forEach(function(c){ c.style.pointerEvents = 'auto'; }); // Build dots for(var i=0;i= maxPos) pos = 0; track.style.transform = 'translateX(-' + pos + 'px)'; // Update current dot based on position var idx = Math.round(pos / (cardW + gap)) % total; if(idx !== current){ current = idx; updateDots(); } } animFrame = requestAnimationFrame(animate); } function pauseAndResume(){ paused = true; clearTimeout(resumeTimer); resumeTimer = setTimeout(function(){ paused = false; }, 3000); } // Hover โ€” desktop track.addEventListener('mouseenter', function(){ paused = true; }); track.addEventListener('mouseleave', function(){ paused = false; }); // Drag / swipe var dragStart = null; var dragStartPos = 0; track.addEventListener('mousedown', function(e){ dragStart = e.clientX; dragStartPos = pos; track.classList.add('dragging'); paused = true; }); window.addEventListener('mousemove', function(e){ if(dragStart === null) return; var delta = dragStart - e.clientX; pos = Math.max(0, dragStartPos + delta); track.style.transform = 'translateX(-' + pos + 'px)'; }); window.addEventListener('mouseup', function(e){ if(dragStart === null) return; var delta = dragStart - e.clientX; dragStart = null; track.classList.remove('dragging'); if(Math.abs(delta) > 50){ var newIdx = current + (delta > 0 ? 1 : -1); goTo(newIdx); } else { goTo(current); } pauseAndResume(); }); // Touch swipe var touchStart = null; var touchStartPos = 0; track.addEventListener('touchstart', function(e){ touchStart = e.touches[0].clientX; touchStartPos = pos; paused = true; }, {passive:true}); track.addEventListener('touchmove', function(e){ if(touchStart === null) return; var delta = touchStart - e.touches[0].clientX; pos = Math.max(0, touchStartPos + delta); track.style.transform = 'translateX(-' + pos + 'px)'; }, {passive:true}); track.addEventListener('touchend', function(e){ if(touchStart === null) return; var delta = touchStart - e.changedTouches[0].clientX; touchStart = null; if(Math.abs(delta) > 50){ var newIdx = current + (delta > 0 ? 1 : -1); goTo(newIdx); } else { goTo(current); } pauseAndResume(); }, {passive:true}); // Init measureCard(); window.addEventListener('resize', measureCard); animate(); })();
Eli
Eli โ€” Behind Ellable
🎓 Creative Arts, Netherlands·🇪🇺 Based in EU·🌍 Working globally

Once I started my own brand โ€” a personalised board game. Orders, online presence, documents. No time for everything.

So I automated the admin, used AI for the heavy lifting, and got back to the work I actually love.

Now I help other founders do the same.

Non-negotiable
Coffee with milk
🍳
Cooking
Healthy and tasty.
✈️
Always somewhere
26+ countries
🎵
New hobby unlocked
AI Songwriting

You probably have questions.

I surely have answers.

I studied Creative Arts in the Netherlands, with a focus on research. After working in graphic design and marketing agencies, I transitioned into product design and UI/UX full-time โ€” and eventually added AI to the mix.
Mostly: Figma and Adobe Suite for design, no-code platforms for websites, and Claude Code for AI-powered builds. For project organisation โ€” Trello, Notion, and Basecamp depending on what suits the client.
It depends on the scope. You'll always get a clear timeline before we start โ€” no surprises.
That's completely fine โ€” and honestly pretty common. We'll figure it out together. A short intro call is usually enough to point us in the right direction.
With milk. I'm here to do great work โ€” but also to enjoy life.
function faqToggle(btn){ var item = btn.parentElement; var isOpen = item.classList.contains('open'); document.querySelectorAll('.faq-item').forEach(function(i){i.classList.remove('open');}); if(!isOpen) item.classList.add('open'); }

Let's figure out what you actually need.

No pitch. No pressure. Just a real conversation.

Privacy Policy
Last updated: June 2025
01 - Who we are

This website is operated by Ellable EOOD (Bulgarian: ะ•ะปะฐะฑัŠะป ะ•ะžะžะ”), a design and automation studio based in Bulgaria.

Company registration number (EIK): 207622003
Registered address: 55 Slavyanska St., Floor 3, Burgas, Bulgaria
Contact: [email protected]

02 - What data we collect

We collect only the information you actively provide to us, which may include your name and email address when you reach out via the contact form or book a call through our scheduling system (Calendly).

We do not collect payment information, and we do not sell your data to third parties.

03 - Why we collect it

Your contact information is used solely to respond to your inquiry or to confirm and manage your scheduled consultation. We do not add you to mailing lists without your explicit consent.

04 - How long we keep it

We retain your contact details only for as long as necessary to address your inquiry or fulfill the purpose for which it was shared. If no working relationship follows, your data is deleted within 6 months.

05 - Cookies

This website uses functional cookies necessary for the site to operate. We may also use analytics cookies to understand how visitors interact with the site - if so, this policy will be updated to reflect which tools are in use and what data they collect. You can decline non-essential cookies via the banner shown on your first visit.

06 - Your rights

Under GDPR, you have the right to access, correct, or request deletion of any personal data we hold about you. You may also object to processing or request that we restrict it. To exercise any of these rights, contact us directly.

Questions about this policy or your data? Write to us at [email protected] and we will respond within 5 business days.