FREE · BROWSER ONLY · NO SIGN-UP

Draw love triangles and character maps
in a cute, friendly tool

Build character relationship charts for anime, manga, drama, fanfic, class rosters, org charts, and social graphs. Upload pictures, add arrows for "love", "dislike", "rival" and more, then capture the whole thing in screenshot mode.

♡ Love ? Crush ⚡ Rival 🌸 Hina 🐱 Kaito Ren

What it can do

Everything you need to build a relationship chart. No specialist app required — the browser is enough.

📷

Upload images as avatars

Drop in portraits for your characters and render them as circle, square, or speech-bubble avatars. Emojis and solid-color circles work too.

↔️

Six arrow styles

One-way, two-way, hearts, cracked, dotted, wavy. Pick whichever shape best tells the story of the relationship.

🎨

Bend arrows freely 🖥 Desktop only

Drag any arrow's line to adjust its curve. Perfect for untangling busy diagrams so every relationship stays readable.

🫧

Group characters together 🖥 Desktop only

Wrap teams, factions, and friend circles in a soft pastel blob. Distant members stay connected by a squishy link, so the whole group reads as one.

📝

Annotate with handwritten notes 🖥 Desktop only

Drop handwritten-style notes anywhere on top. Free color, size, and rotation — link a note to nodes or arrows with thin dotted lines, even several at once. Great for asides, callouts, and snarky commentary.

Relationship labels & stamps

Preset labels for "Love", "Dislike", "Rival", "Trust", "Crush" — or type your own. Top it off with a stamp (♡ ✕ ★, etc.).

🧩

Add as many nodes as you want

Not limited to triangles. Four, five, ten characters — no cap. Drag them anywhere on the canvas.

📸

One-tap screenshot mode

Hide every control in one click so you can capture the diagram with your OS screenshot tool. Perfect for social posts and docs.

Undo / Redo & sample

Ctrl+Z / Y rewinds any change. Load a sample diagram to jump straight into editing instead of starting blank.

💾

Save & load project files

Download your diagram as a .sankaku.json file, then open it another day to keep editing. Uploaded images are bundled inside, and the format is compatible with the Japanese edition.
* Export works on desktop and mobile; loading is desktop-only. Sketch on phone, finish on desktop.

🔄

Auto backup

Edits are saved to your browser automatically. Close the tab by accident? The previous state comes back next time you open it.

Desktop vs. Mobile

The mobile edition is a lightweight version for quick edits on the go. For detailed work and advanced features, we recommend the desktop edition (or a large-screen tablet).

Feature
🖥 Desktop
📱 Mobile
Build and edit relationship charts
Image / emoji / color customization
Relationship labels & 6 arrow styles
Screenshot mode
Auto-backup to browser
🎨 Bend arrows freely
🫧 Groups
📝 Handwritten notes
💾 Export project file (.sankaku.json)
📂 Open project file (.sankaku.json)

* Export of .sankaku.json works on both desktop and mobile, but loading is desktop-only. To finish a mobile draft on desktop, tap "+ More > 💾 Export for desktop editing" on mobile, then on desktop choose "💾 ▾ > 📂 Open project file".

1Five easy steps

Most people are done in under five minutes, even on their first try.

1

Add a node

Hit "+ Node" in the top-right to add a character. Give it a name and optional one-line description.

2

Set the avatar

Upload an image, or pick an emoji or a color. Change the shape to circle, square, or speech bubble.

3

Connect them

Hover any node to reveal a handle on the top-right. Drag it onto another node to draw a relationship line.

4

Customize the relationship

Click a line to pick the relationship type, arrow style, color, and a decorative stamp.

5

Save as an image

Press "📸 Screenshot" on the toolbar. All chrome disappears — capture the diagram with your OS screenshot shortcut.

🫧How to use groups 🖥 Desktop only

Wrap teams, factions, or friend circles in a soft pastel blob so relationships read at a glance.

1

Select a node and click 🫧 Add to a group

Pick any character, then click the button near the bottom of the right-hand side panel. A new group is created with that character as its first member.

2

Click the other characters to add them

While the "🫧 Editing group" banner is visible at the top of the canvas, every click toggles a character's membership. The colored blob updates live as you add or remove.

3

Hit Done to finalize

Click the Done button (or press Esc) to exit compose mode. The group becomes the current selection and the side panel switches to the group editor.

4

Name, color, and position the label

Use the side panel to set the group name, pick a color (custom hex supported), and toggle name visibility. Drag the name label to place it wherever looks best on the canvas.

5

Stack multiple groups freely

A single character can belong to any number of groups at once — e.g., "Homeroom 1-A" and "Basketball Team" at the same time — so you can capture real-world social overlap. Use the × buttons in the side panel to remove them one by one.

Great for

Any time a relationship map needs to be obvious at a glance.

📺

Anime & manga ships

Document character pairings and fandom theories for reviews and posts.

🎬

Drama & movie cast maps

Make the web of characters in a long-running drama readable in one image.

✍️

Writing & worldbuilding

Track who likes, dislikes, or rivals whom across your novel or TTRPG campaign.

🏫

Class or club dynamics

Visualize real-life friend groups in a cute, low-stakes way.

📱

Social media posts

Make eye-catching love-triangle memes that look great on X / Instagram.

🎓

History & mythology

Chart historical figures or mythical gods for study guides and class projects.

💼

Org & stakeholder charts

Lightweight diagrams for team structure and vendor relationships.

🎮

Game character maps

Map out the cast of a big RPG or dating sim so you can keep everyone straight.

Labels & arrow styles

Preset relationship labels (plus free-form text) and six arrow styles.

Relationship labels

Love

Romantic affection / liking

Dislike

Antipathy, aversion

Rival

Competition, tension

Trust

Friendship, loyalty

?

Crush

Curiosity, a soft spot

Custom

Type your own label

Arrow styles

One-way

A one-sided feeling or action.

Two-way

Mutual feelings — including requited love.

Hearts

For mutual love or strong affection.

Cracked

A broken or fractured relationship.

Dotted

Ambiguous or faint feelings.

Wavy

Unstable, fluctuating relationships.

💡Handy shortcuts 🖥 Desktop

Small tricks that make editing feel much smoother once you know them.

Drag any line
Bend the arrow any way you like. Great for untangling busy diagrams and keeping every label readable.
With an arrow selected: Shift + click another arrow
Swaps the two arrows' stacking order. Handy when one label is hidden behind another.
Drag a group's name label
Move the label wherever looks best. Useful when it overlaps a character or a relationship line.
Ctrl / + Z / Y
The usual Undo / Redo — peace of mind when you delete something by accident.
The 🌈 button in the color palette
Opens your OS's native color picker for any custom hex. Perfect for matching a palette you already have in mind.

?FAQ

Is it really free?

Yes. The Triangle Relationship Generator runs entirely in your browser at no cost. No account, no install — just open the page and start drawing.

Can I save the diagram as an image?

Yes. Press the "📸 Screenshot" button on the toolbar to hide every control, then use your OS screenshot shortcut to capture the diagram.

Can I save my progress and come back later?

Yes. Save your current state as a .sankaku.json file — uploaded images are embedded inside, and the format is compatible between the English and Japanese editions (free-form text stays in the language it was entered).
Desktop: export AND load ("💾 ▾" toolbar menu).
Mobile: export only ("+ More > 💾 Export for desktop editing").
Sketch on mobile, finish on desktop. Each browser also auto-backs up its work to localStorage, but this backup is per-device and per-browser — desktop and mobile do not sync. To move work between devices, use .sankaku.json export / import.

Are uploaded images sent to your servers?

No. Everything is processed inside your browser. Images are auto-backed-up to local storage for convenience, and "Clear all" wipes that backup. Nothing is uploaded anywhere.

How many characters can I add?

There is no hard limit, but for readability we recommend around 20 characters per diagram. Go beyond that and lines can tangle. For large casts, try splitting main and side characters into separate diagrams.

Does it work on mobile?

Yes — we ship a dedicated mobile editor with a bottom tab bar, guided flows for adding characters and drawing relationships, and a screenshot mode for saving. It supports the same relationship labels, arrow styles, and backgrounds as the desktop edition. For fine-grained layout work we still recommend the desktop version.

Can I use the exported diagram commercially?

The copyright of the exported image belongs to you (the creator). However:

Uploaded images: the copyright belongs to their original owners. Please confirm you have the rights before using them.

Preset emojis: emojis are rendered by your browser or operating system, so the actual glyph design (Apple Color Emoji, Google Noto / Emoji Kitchen, Microsoft Segoe UI Emoji, Samsung, Twemoji, etc.) is owned by that vendor and each has its own license. When you export a screenshot that includes emojis, please check the terms of the vendor whose emoji font is embedded in the image, especially for commercial use.

See the Terms of Use for details.

💕

Start drawing your love triangle

Everything is set up. Your browser is all you need to make a cute relationship chart.

Open the tool →

Support development

Thank you for using this tool. I'm Haruki Tominaga, the developer.

I want to support your creative work in some small way, so I publish most of my tools — including this one — free of charge.

If you've enjoyed using this tool and felt "this helped me!", I'd be truly grateful for a coffee-sized show of support — no pressure, just a warm gesture if it fits.

Anything you send goes directly toward server costs and the energy to keep building.

☕ Buy Me a Coffee

!Disclaimer