Nucleotides form spontaneously in seawater spray with a magnesium ion catalyst. Phosphorylation uses boron as a catalyst.
The 70s ribosome in bacteria has two subunits, one of which is about 1500 nucleotides long and the other is 120 nucleotides long.
To get from individual nucleotides to polymers requires lead ion and cold temperatures, and there are other ways of getting there (like imidazolides). You get about 10% 3'-5' linkages and about 90% 2'-5' linkages. The experiments with imidazolides commonly yield chain lengths of 40 bases within 24 hours.
To get from there to self replicating RNA without enzymes, is actually very easy. Poly-C can direct the replication of long oligo-nucleotides at room temperature. Less than 1% of the product contains non complimentary nucleotides.
These simple reactions lead to the "RNA world" hypothesis, which unfortunately is long since gone and doesn't leave any evidence. What is next is an RNA polymerase enzyme, which makes replication efficient. So now, we have to do a little math. For instance - how long does it take to get a 1500 nucleotide polymer with the correct sequence for a ribosome? If you model oligomerization as a Poisson process the answer is about 400 years. That's in seawater without any protection. But during that 400 years you also get every other sequence of length 1500, so you get your 120-long 5s subunit for free. So this is for the nucleotide portion of a ribosome, and then you also have to account for the 20 or so short proteins that are associated with a ribosome. The good news is that polypeptides are easier and quicker than polynucleotides. The sequence lengths in question are between 100 and 500 amino acids, so it is likely that the polynucleotide is the rate limiting factor.
So we could be generous and say that within 1000 years you'd have enough polymer nucleotides and proteins floating around for self replication, but then the next step is to get them inside a big enough micelle where they're protected and actual cellular replication can begin. This is a non trivial step because you need all the right polynucleotides and all the right proteins in the same place at the same time. But once it happens, you have a cell.
No one really knows how long this step takes because in simple seawater the micelles start eating each other, and there are degredatory processes in addition to constructive ones. The best guess so far is in the neighborhood of around 10,000 years to get a minimal cell. Of course you could speed it up in the laboratory, but under natural conditions the math is very complex and the most we can definitively say is "it takes a while".
But 10,000 years is a reasonable estimate considering we have full-on bacteria within about 500,000 years (complete with a cell wall and structured replication).
This mechanism is entirely plausible but no one's going to wait around 10,000 years to test it. What they do instead is model it on a computer. The best known software platform is called Avida, it runs on a supercomputer or in the cloud. Here is one of the early summaries of Avida from a few years ago:
Computing the Origin of Life The mystery of life's origins could one day be solved thanks to that modern antithesis of life — the computer.
astrobiology.nasa.gov
These studies are ongoing, and NASA does this for other planets too, not just earth. The interesting thing about Avida is it doesn't actually synthesize any chemicals, instead it synthesizes software - self replicating and evolving software. It is a computational biology model of the real thing.
en.wikipedia.org
So then, any such effort has to deal with errors in replication, which is a form of variability. Even without actual mutation, you still get errors. A lot of attention has been paid to this issue.
Plus, then, there follows immediately the issue of shape. Protein folding is pretty easy compared to nucleotide looping. To get loops, you have to have complementary sequences of the right length. There are still all kinds of proposals about how this might happen, but that it does is undeniable. All your transfer RNA for example, has loops in the right places.
Anyway, that's about the frontier of evolution so far, we're limited by complexity and computation speed.