JSFiddle - React, Tailwind, and code Playground

JavaScript

function isAligned(p1, p2, candidate) {
    var diffX = p2[0]-p1[0];
    var diffY = (p2[1]-p1[1]);
    if (diffX == 0 && diffY == 0)
        return false;
    return diffX * candidate[1]  == diffY * candidate[0] + diffX * p1[1] - diffY * p1[0];
}

function longuest(points) {
    var best = [];
    for(var i = 0; i < points.length; i++) {
        for(var j = 0; j < points.length; j++) {
            if (i == j) {
                continue;
            }
            var lineup = [];
            for(var k = 0; k < points.length; k++) {
                if (isAligned(points[i], points[j], points[k])) {
                    lineup.push(k);
                }
                if(lineup.length > best.length){
                    best = lineup;
                    console.log(i +', '+j + ': '+ JSON.stringify(lineup));
                }
            }
        }
    }  
    return best;
}

var arr = [[9,93],[43,84],[88,82],[27,51],[6,7],[98,99],[26,96],[67,37],
           [77,8],[11,62],[67,29],[64,53],[51,74],[99,36],[23,85],
           [8,53],[85,35],[15,71],[66,27],[95,77],[62,48],[82,1],
           [5,81],[58,2],[93,52],[59,55],[74,17],[51,36],[66,61],
           [41,53],[18,29],[35,89],[63,50],[37,6],[40,23],[97,39],
           [68,11],[89,30],[2,87],[18,96],[17,79],[24,68],[36,8],
           [45,84],[21,13],[43,90],[42,73],[62,91],[81,37],[98,63],
           [56,21],[65,47],[77,55],[40,77],[16,75],[62,12],[75,12],
           [86,64],[2,30],[71,62],[81,70],[5,64],[19,32],[16,43],
           [38,26],[98,6],[46,23],[98,65],[53,20],[79,31],[7,60],
           [50,65],[31,83],[81,41],[0,29],[33,61],[55,77],[23,65],
           [9,93],[42,20],[37,27],[51,71],[7,73],[97,21],[36,35],
           [98,93],[89,39],[12,98],[86,49],[64,7],[4,48],[37,93],
           [52,26],[24,51],[33,56],[23,72],[11,29],[89,76],[62,25],
           [0,40]];
console.log(longuest(arr));