I'd like to implement a custom client-side rendering for OpenStreetMap. For that, I'd need the source data to render. I could use the OSM XML source - but not at higher scales, as the amount of data becomes too high. And most of that data is not needed, as it makes sense to show fewer features at higher zoom levels.
Size of already rendered data is roughly proportional to (bbox area)/zoom^2. Is there an API, and a server providing OSM source data with it, which would also return only about a fixed amount of data for a "fixed viewport size"?
Ideally, I'd like to select the features which I want to see at particular zoom levels, but a server which selects it for me would be also a great start.