A profile for bike routing with BRouter (found at https://github.com/abrensch/brouter )
The profile was built for some light touring or commuting with a city bike.
It priorizies good ways and easy riding, but will suggest some more offroad ways to avoid traffic.
It was developed with "dense" OSM cities in mind, and should cover all oneway and cycleway tag situations found in OSM.
It evaluates all ways with the same logic - no heuristic assumptions are made based on waytype.
It has a method to find the waycost taking all types of road quality indicators into consideration (smoothness, surface, tracktype, mtb:scale, sac-scale).
It is generally carefuly - it avoids uncertain situations like reversible traffic, barriers or not explicitly whitelisted highway types.
All this means it takes a bit longer to calculate routes than most other profiles, but hopefully it should cover mostly everything found in OSM.
If you are looking for highly configurable profiles for a variety of other purposes give a try to
https://github.com/poutnikl/Brouter-profiles