What all steps we should take to optimize a single page website? keyword selection, metas, contents .. etc.
For seo you need to update your single page post with headings h1 h2, Images with alt , put meta keywords, meta description , meta title , optimize images...
Do everything you make on non-singlepage websites. It will be hard but there is not any other way out.
Single page websites are bad for SEO. Since search engines rank web pages and not websites you need to make sure each web page is tailored towards a specific topic so it optimized to rank well for that topic. Putting more then one topic on a page dilutes that page's value for each topic and thus hurts its chances of ranking for both topics. It gets worse as you add more topics to that page. It also isn't useful for users since they have to sift through content they're not interested in to find the content they are looking for. Additionally, internal links are valuable tools for SEO. They're almost as good incoming links from external sites and their anchor text does have value. Having a single page website means you are missing out on them.
The same way you would optimize a website, but instead of having to worry about every page, you focus on a single page. Meta tags, H1/H2/H3 tags, keyword in title/description/content etc. Obviously build backlinks to the specific page, not the domain for optimizing a single page.
Single page or think sites are getting hard to rank these days, but the optimization rules remains the same like proper use of keywords, headers, sub headers and link back to the page using proper anchor text.
If you want to do Search Engine Optimization of single page website then you can do it but you have to give maximum efforts to get higher ranking. I advice you that you must follow all On-Page SEO algorithm first then move towards Off-Page Activities. But now a day Unique Content is the most powerful medium to get good results so always rotate your website content.
The best way to optimize a single-page website is to make it a multi-page website. Seriously. For the reasons other mentioned above (who is going to trust a one-page site - it probably provides poor user experience at best). Other than that, of course you optimize it as any other website. Learn how to do practical onpage optimisation, try to get some backlinks to it, share it on social media, bookmark it, etc. But.. no deep links, internal anchor texts and other SEO joys for you.. sorry
In my opinion, it won't work properly if you have a single page website. It is suggested that a website must have multiple pages and if possible, one service/product must have a particular page, that will cover keywords to be promoted.
I think, you are right Aliona Bondarchuk! Do your best for creating backlinks, getting best results in SERP.