FYI, I would not drive the pins at a calculated 20mA. Stay safe with a 15mA calculation, hook to VIN so you get to use larger more common perhaps resistor values, and ensure you use 5V tolerant Digital pins (all except D2 is 5V tolerant).
One important thing to note, VIN has a diode between the actual USB 5V and VIN… so in practice you get about a 0.2V drop there.
Now follow me on my crazy thought process… you will learn how to find the right values to work with.
Blue and Green LEDs
4.8 - 3.5 = 1.3V (drop across the resistor)
1.3 / 0.015 = 86.66666 ohms (bah… not a good resistor)
Let’s use 100 ohm resistor since it’s common and see what that does to the current.
1.3V / 100 = 0.013A (13mA) … I’d say that’s an acceptable compromise.
Red LED
4.8 - 2.0 = 2.8V
2.8V / 0.013 = 215.3 ohms (hmm, let’s do our trick again and find a close value)
220 is really close, BUT since we are using 100 ohms already, just use two of them in series for 200 ohms…
2.8 / 200 = 0.014A (14mA) sweet… you’ll never see the difference…
Now technically you’d want to hook each LED color up to PWM so you have total control over how bright each one is… and get that perfect color, or maybe create the perfect rainbow generator. Unfortunately there’s only two 5V tolerant PWM outputs (D0, D1). So what you SHOULD do then, is hook up the LED to the output of something like a ULN2003 darlington array. Each output is capable of 500mA, and you can hook the input of the driver straight up to the 3.3V PWM outputs (A0, A1, A4, A5, A6, or A7). Now just recalculate things for 30mA of drive (max of the LED) and don’t forget to account for the ~1V drop of the darlington driver outputs.
4.8 - 1.0 - 3.5 = 0.3V
0.3V / 0.03mA = 10 ohms.
At this low of resistance, you will likely end up over driving the LED if you are not careful. Your best best is to create a more known and regulated voltage reference for your LED power, or reduce the voltage drop of the driver by using discrete MOSFET drivers. It’s just a little more work to wire up. Here’s a good thread discussing that: https://community.spark.io/t/wiring-to-drive-an-rgb-led-strip/3888
At the end of the day you might just want to control the on-board RGB LED and call it done!
Or use a NeoPixel
Also, if you want to play it really safe when starting your wiring, you should use 270 ohm resistors… because at this level you’ll never exceed 20mA on any pin if you accidentally short the other end of that resistor to GND.