Free To-Do List Online - Minimalist Task Manager - Small Study Tools
100% Free · No Signup · Browser-Based

Free To-Do List Online

Organise your tasks beautifully. Drag to reorder, set priorities and export your list as PNG or PDF. Pro Mode adds categories, sub-tasks, due dates, multiple lists, themes and stats.

100% Private — your list data never leaves your browser
Pro Version is Free for now
✓ Categories · Sub-tasks · Due dates ·
Multiple lists · Themes · Stats · Bulk actions unlocked
Day Night
0%
No tasks yet
Add your first task to get started
+
📋
Your list is empty — add a task above!
0 tasks
📊 Statistics
0
Total Tasks
0
Completed
0%
Completion Rate

Your list data never leaves your browser — all processing is local.

🎯 Filter & Sort PRO
⚡ Bulk Actions PRO
🎨 Export Theme PRO

Choose a theme for your PNG/PDF export

`;const blob=new Blob([html],{type:'text/html'}); const a=document.createElement('a'); a.download='todo-list.html'; a.href=URL.createObjectURL(blob); a.click(); toast('PDF report downloaded — open and Print → Save as PDF'); }// ───────────────────────────────────────────────────────────── // CONFETTI // ───────────────────────────────────────────────────────────── function confetti(){ const canvas=document.getElementById('confCanvas'); const ctx=canvas.getContext('2d'); canvas.width=window.innerWidth; canvas.height=window.innerHeight; canvas.style.display='block'; const parts=Array.from({length:80},()=>({ x:Math.random()*canvas.width, y:-20, vx:(Math.random()-.5)*6, vy:Math.random()*4+2, r:Math.random()*6+3, a:1, col:['#ef4444','#f59e0b','#10b981','#3b82f6','#8b5cf6','#f97316'][Math.floor(Math.random()*6)], rot:Math.random()*360, rSpeed:(Math.random()-.5)*8 })); let f=0; (function ani(){ ctx.clearRect(0,0,canvas.width,canvas.height); let alive=false; parts.forEach(p=>{ p.x+=p.vx; p.y+=p.vy; p.vy+=.1; p.rot+=p.rSpeed; if(p.y/g,'>'); } function toast(msg){ const t=document.getElementById('toast'); t.textContent=msg; t.classList.add('show'); setTimeout(()=>t.classList.remove('show'),2600); } function setAppMode(m){ appMode=m; document.getElementById('btnSimple').classList.toggle('active',m==='simple'); document.getElementById('btnPro').classList.toggle('active',m==='pro'); document.body.classList.toggle('pro-mode',m==='pro'); const pb=document.getElementById('proBar'); if(pb) pb.style.display=m==='pro'?'flex':'none'; try{localStorage.setItem('sst_todo_mode',m);}catch(e){} buildListTabs(); render(); }// Keyboard document.addEventListener('keydown',e=>{ if(e.key==='Escape'&&document.activeElement===document.getElementById('taskInput')) document.getElementById('taskInput').blur(); });// ───────────────────────────────────────────────────────────── // SAMPLE DATA // ───────────────────────────────────────────────────────────── function loadSampleData() { if(tasks.filter(t=>t.list===curList).length && !confirm('Replace current list with sample data?')) return; tasks = tasks.filter(t=>t.list!==curList); // clear current list only const today = new Date().toISOString().slice(0,10); const tomorrow = new Date(Date.now()+86400000).toISOString().slice(0,10); const yesterday = new Date(Date.now()-86400000).toISOString().slice(0,10); const samples = [ {text:'Complete assignment draft', prio:'hi', cat:'study', due:today, starred:true, note:'Focus on introduction and methodology sections', subs:[{text:'Write introduction',done:true},{text:'Literature review',done:false},{text:'Methodology section',done:false}]}, {text:'Review lecture notes', prio:'hi', cat:'study', due:today, starred:false, note:'', subs:[]}, {text:'Submit group project report',prio:'hi', cat:'work', due:tomorrow, starred:false, note:'Check formatting before submitting', subs:[]}, {text:'Buy groceries', prio:'med', cat:'shopping', due:'', starred:false, note:'', subs:[{text:'Milk and bread',done:true},{text:'Fruits & veg',done:false}]}, {text:'30 minute walk', prio:'med', cat:'health', due:today, starred:false, note:'', subs:[]}, {text:'Call dentist for appointment',prio:'lo', cat:'personal', due:tomorrow, starred:false, note:'', subs:[]}, {text:'Read 20 pages of textbook', prio:'med', cat:'study', due:'', starred:false, note:'', subs:[]}, {text:'Pay electricity bill', prio:'hi', cat:'personal', due:yesterday, starred:false, note:'⚠️ Already overdue!', subs:[]}, {text:'Reply to emails', prio:'lo', cat:'work', due:'', starred:false, note:'', subs:[]}, {text:'Plan weekend study schedule',prio:'lo', cat:'study', due:'', starred:false, note:'', subs:[]}, ]; // Mark some done const doneIdx = [1, 3]; samples.forEach((s,i) => { tasks.push({ id:nextId++, text:s.text, done:doneIdx.includes(i), prio:s.prio, cat:s.cat, due:s.due, starred:s.starred, note:s.note, subs:s.subs||[], list:curList, _noteOpen:false, _subsOpen:false }); }); save(); buildListTabs(); render(); toast('✨ Sample data loaded!'); }// Start init();

How to Use the To-Do List

From an empty list to your tasks organised and exported — no signup, nothing ever leaves your browser.

1
Add Your Tasks
Type a task and press Enter. Add as many as you need.
2
Drag to Reorder
Drag tasks into priority order, or set priority levels in Pro Mode.
3
Check Tasks Off
Click the circle beside a task to mark it done as you go.
4
Download
Export your list as a PNG or PDF, styled with an export theme in Pro Mode.

Everything above runs entirely in your browser — your task list is never uploaded to a server, so it stays completely private from start to finish.

Specifications
Price Free
Signup Not Required
Data Storage Local only (this device)
Export Formats PNG · PDF
Export Themes 6 (Pro)
Platform Optimized for Web & Mobile
Category Productivity Tools
Found a bug or something not working right? Let us know and we'll fix it — every report helps make this tool better.
Report an Issue

Free Online To-Do List — Aesthetic, Private, No Signup

An online to-do list lets you add, prioritise and check off tasks in a browser, with nothing to install and nothing sent to a server. This one keeps every task in your browser's local storage, supports drag-and-drop reordering, and exports your finished list as a styled PNG or PDF — the whole workflow works the same on a laptop, tablet or phone.

A good to-do list needs to disappear into the background of actually getting things done — not add friction with logins, ads, or a UI that fights the task itself. This tool covers the core loop for free: add a task, drag it into order, check it off, download a copy. Pro Mode (also free) adds what a heavier workload usually needs — categories, due dates, priority levels, sub-tasks, multiple named lists, filtering, sorting, live statistics, and six export themes for an aesthetic to-do list look when you download it. None of that complexity is forced on anyone who just wants a fast, uncluttered place to jot down today's tasks — Simple Mode stays exactly that simple.

1Simple vs Pro — What Each Mode Includes

FeatureSimple ModePro Mode (Free)
Add, reorder (drag & drop), complete tasks
Download list as PNG or PDF
Clear all tasks
Priority levels, categories, due dates
Sub-tasks & notes per task
Multiple named lists
Filter (active/completed/starred/overdue) & sort
Bulk actions (mark all done, delete completed)
Live statistics & completion rate
6 export themes (Minimal, Dark, Gradient, Sunset, Ocean, Forest)

2Common Ways People Use a To-Do List

📚
Daily Study Tasks
💼
Work Task Tracking
🏠
Household & Errands
🎯
Project Checklists
🛒
Shopping Lists
📅
Weekly Planning

Multiple named lists in Pro Mode exist specifically for cases like these — a "Work" list and a "Personal" list side by side, switched with a single tab click, rather than one long list mixing unrelated tasks. Priority colour-coding (a red, amber or green stripe on each task) makes it obvious at a glance which items actually need attention first, without having to read every line.

3Getting an Aesthetic To-Do List Export

ThemeLookBest For
MinimalClean white background, simple textPrinting, professional sharing
DarkDeep navy background, light textPhone wallpapers, night-friendly viewing
GradientPurple-to-indigo gradientSocial sharing, a more decorative look
SunsetOrange-to-red gradientA warm, energetic aesthetic
OceanBlue-to-teal gradientCalm, focus-oriented visual style
ForestDeep green gradientA natural, grounded look

Choosing a theme before exporting doesn't change your data or how the list functions — it only styles the downloaded PNG or PDF. That separation matters: the working list stays fast and functional while you're actively using it, and the styling only gets applied at the point of export, when appearance is what matters.

Privacy Note

Every task, sub-task, note and due date is stored using your browser's local storage — nothing is transmitted to a server to save, filter, sort or export your list. Closing the tab doesn't lose your data either, since it persists locally until you clear it yourself.

4Why Drag-and-Drop Ordering Beats a Fixed List

A to-do list where tasks appear in the order you typed them stops reflecting reality the moment priorities shift — which, on most days, is almost immediately. Drag-and-drop reordering lets the list stay a genuine reflection of what matters right now rather than a static record of when each item was added. Combined with the priority colour stripe, a quick reorder at the start of the day turns a flat list into something closer to an actual plan: the most urgent items visually and positionally at the top, everything else beneath. Pro Mode's priority-based sort does the same thing automatically, grouping high-priority tasks together without needing to manually drag each one.

5Frequently Asked Questions

How do I make an online to-do list for free?
Type a task into the input box and press Enter — that's the whole workflow. Drag tasks to reorder them, click the circle to mark one done, and use Download PNG or Download PDF whenever you want a copy to save or print. No account or signup is required.
Can I make my to-do list look aesthetic?
Yes. Pro Mode adds six export themes — Minimal, Dark, Gradient, Sunset, Ocean and Forest — so your downloaded PNG or PDF list looks polished rather than like a plain text export, without needing separate design software.
Is my to-do list data private?
Yes. Every task is stored in your browser's local storage on your own device. Nothing is uploaded to a server, so your task list is never visible to anyone but you.
Can I export my to-do list as a PDF or image?
Yes. Click Download PNG for an image you can share or set as a background, or Download PDF for a print-ready file — both are generated instantly from your current list, styled using whichever export theme is selected.
Can I add due dates and sub-tasks to a to-do list?
Yes, in Pro Mode. Each task can have a due date, a category, a priority level, sub-tasks, and a note — useful for breaking a larger task into smaller steps without leaving the main list.
Can I keep more than one to-do list?
Yes, in Pro Mode. Multiple named lists let you separate, for example, work tasks from personal tasks or a specific project from your everyday list, switching between them with a single click.

Built on standard, well-tested libraries — PNG and PDF export run on the open-source html2canvas and jsPDF libraries, and every task is saved through the browser's native Web Storage API, not a proprietary or server-based system.

Lilly
Here to help you find a tool
Search tools Search blogs
Try me to find a tool! 👋