In a small bowl, combine chili powder, smoked paprika, garlic powder, onion powder, and cayenne pepper (if using).
Drizzle salmon with olive oil. Sprinkle spice rub over salmon, pressing gently. Season with salt and pepper.
Bake on a parchment-lined baking sheet for 12-15 minutes, or until salmon flakes easily.
Alternatively, pan-sear the salmon: Heat a tablespoon of olive oil in a large skillet over medium-high heat. Place the salmon skin-side down (if using skin) in the hot skillet and cook for 5-7 minutes, or until the skin is crispy and golden brown. Flip the salmon and cook for another 3-5 minutes, or until cooked through.
Flake the salmon into bite-sized pieces.
Make the Slaw:
In a large bowl, combine shredded cabbage, shredded carrots, and chopped cilantro.
In a small bowl, whisk together mayonnaise, lime juice, honey (or agave nectar), and Dijon mustard.
Pour dressing over cabbage mixture and toss well.
Season with salt and pepper to taste. Adjust lime juice or honey to your liking.
Chill for at least 30 minutes (optional).
Prepare the Avocado Crema:
In a food processor or blender, combine avocados, sour cream (or Greek yogurt), lime juice, water, cilantro, and minced garlic.
Blend until smooth. Add more water if needed to reach desired consistency.
Season with salt and pepper to taste. Adjust lime juice or garlic to your liking.
Chill for at least 15 minutes.
Assemble the Tacos:
Warm tortillas according to package directions.
Place a spoonful of flaked salmon in each tortilla.