Every developer has been there. You're building a feature, and suddenly you're faced with a familiar task: comparing two lists to find the differences, filtering a massive dataset based on complex criteria, or merging arrays without creating duplicates. You sigh, open your editor, and begin writing the same for loops, if conditions, and temporary data structures you've written a hundred times before.
This repetitive work is more than just tedious—it's a hidden tax on your productivity. Writing custom list logic is prone to off-by-one errors, inefficient algorithms (hello, accidental O(n^2) complexity), and memory issues when dealing with large datasets. It's boilerplate that distracts you from your application's core business logic.
What if you could offload all of that complexity? What if you could perform powerful, highly-optimized list operations with a simple API call? That’s exactly what we built with lists.do, your dedicated API for Lists as a Service.
Imagine you need to sync two contact lists. You have a master list and a new list of sign-ups, and you want to find only the new contacts that aren't already in your master database.
Without lists.do, you might write a nested loop or use a Set for a more optimal approach, but it still requires multiple lines of setup and logic.
With lists.do, that entire operation becomes a single, declarative function call.
import { createClient } from '@do/sdk';
const lists = createClient('lists.do');
// Find unique items not present in the second list
async function findUniqueContacts() {
const listA = ['user1@example.com', 'user2@example.com'];
const listB = ['user2@example.com', 'user3@example.com'];
const { data } = await lists.diff({
source: listA,
exclude: listB
});
console.log(data);
// Output: ['user1@example.com']
}
findUniqueContacts();
In this example, the .diff() method instantly tells us which items in listA are not present in listB. The code is clean, expressive, and—most importantly—you didn't have to write, test, or optimize the underlying comparison algorithm.
Moving list operations to a dedicated API might seem like an extra dependency, but the benefits quickly outweigh the initial setup.
Reduce Boilerplate and Focus on Your Product: Your primary goal is to build great features, not to reinvent the wheel for array manipulation. By abstracting away these common data manipulation tasks, you free up your team to focus on what makes your application unique.
Guaranteed Performance at Scale: Performing a diff on two lists of 100 items on your server is trivial. But what about two lists with a million items each? lists.do is built on optimized cloud infrastructure designed to handle massive datasets asynchronously. You can process huge lists without maxing out your own server's CPU or memory.
A Comprehensive Toolkit for Data Manipulation: Our API isn't just for finding differences. We provide a complete suite of set theory and data manipulation tools, including:
Getting started with lists.do is designed to be as frictionless as possible. Whether you prefer a simple REST API endpoint or a developer-friendly SDK, we have you covered. We currently offer official SDKs for TypeScript/JavaScript, Python, and Go, making it a breeze to integrate powerful list operations into any new or existing project.
Stop letting boilerplate list logic slow you down. Let lists.do handle the heavy lifting of data manipulation so you can get back to building what matters.
Q: Why would I use an API for list operations?
A: Using lists.do abstracts away the complexity of common data manipulation tasks. It allows you to reduce boilerplate code, ensure high performance on large datasets, and focus on your application's core business logic.
Q: What types of list operations can I perform?
A: Our platform supports a comprehensive suite of operations, including sorting, filtering, mapping, finding unique items (uniques), calculating intersections and differences (diffs), merging, and other powerful set theory functions.
Q: How does lists.do handle very large lists?
A: lists.do is built for scale. Operations are executed on our optimized cloud infrastructure, allowing you to process lists with millions of items asynchronously without impacting your own server resources.
Q: Can I integrate lists.do with my current tech stack?
A: Yes. We offer simple REST APIs and developer-friendly SDKs for languages like TypeScript/JavaScript, Python, and Go, making it easy to integrate list operations into any new or existing project.