Primarily Calorie King and NutritionData.com, plus of course the manufactures websites and website of restaurants.
But then you have to add up all the numbers yourself to come up with a total.
So, because I'm lazy, I've been working on a custom 'Meal Builder' app for my own cooking. The app allows me to create 'Meals' which combine any number of individual ingredients, (like: 4 oz of ground beef, 1 oz of american cheese, 2 oz of Nature's Own white bread, 2 tbsp of Hienz ketchup, 50 grams of Del Monte green beans w/ 1 tbsp of Blue Bonnet margarine) [these are all made up number for demonstration purposes only] showing me the combined results including: Calories, Carbs (simple & complex), protein, fat, etc. Basically everything off the nutrition labels. It does all the math for me, for the entire 'meal' and save it for future use.
I have a database of the particular items we normally purchase: Ground beef, chicken, pork, turkey, bacon, a few of the prepared packaged items, condiments, etc. (Really, everything we buy at the grocery store.)
For any item not on our usual list, I do a routine download of the USDA National Nutrient Database, which the app can search for individual items.
And I've got a nice digital kitchen scale for weighing the ingredients.
My plan is to incorporate this into my Diabetes Management System, allowing me to select "Meal #17" from a list (which for example, might Burritos w/ a garden salad, or Baked ham w/ new potatoes and green beans, or scrambled eggs w/ bacon, etc.) and having the system do the math and prompt me with total Carbs (including simple & complex - adjusted for fiber, protein and fat) so that can be entered in the bolus wizard.
The ultimate goal is to track pre & post-prandial BGs, vs. bolus amounts vs. actual ingested nutrition info per meal.