Welcome to ETO!
The first order of business embarking on this project is determining and specifying the heating element that you will be driving. In the case of a wearable item like this, it is likely something like a flexible carbonized fabric that basically acts like a big resistor that dissipates heat over a large area. Things like that are a bit specialized, so honestly your easiest option for obtaining one would probably be to salvage it out of something else. If I were doing this, I would order a cheap heating pad online, then take it apart and carefully reverse engineer it and experiment with how it works. The important criteria to figure out are going to be the resistance of the pad, and what power needs to be dissipated by the pad to produce a decent amount of heat. They even sell cheap USB-powered heating pads on eBay that would run at low voltage and that I think would be ideal for salvaging and experimenting with:
https://www.ebay.com/sch/i.html?_od...eating+pad.TRS1&_nkw=usb+heating+pad&_sacat=0
The second major consideration is going to be controlling the temperature. I think those USB pads are just on all the time, but something meant for warming liquids might need a way to read and regulate the temperature. A simple 3-wire temperature sensor like a TMP36 or similar temperature sensor would be fine, and would output an analog voltage that could easily be read by a small microcontroller with an ADC, or alternatively using an analog feedback loop with something like an op-amp to drive a power transistor to control the heating pad. This is going to be one of the main design portions of this project. Placement of the temperature sensor and limiting the power output will also be an important factor to ensure that you do not get uneven or overly fast heating.
Next will be determining your battery setup. A heating pad like this, even at moderate power just to warm a beverage, might run at several watts, so you may need a modest size battery pack to run it. You basically have two options: lithium or NiMH. NiMH are fairly robust and are fairly simple to make a charging system for, but they tend to be larger and heavier than an equivalent lithium for the same number of Watt-hours. Lithium batteries are light, run at a higher voltage than NiMH, and have high energy density, but are picky about how you charge them, and can be dangerous if not properly protected. I would suggest getting a pre-assembled battery protection/charge control board somewhere online from places like eBay, Sparkfun, etc. rather than trying to build your own. If you are running a 5V pad, you may even be able to salvage the 5V converter/charging board out of a battery power bank. Remember, safety should be a priority when working around battery packs, especially if those battery packs will be worn on your person!
Depending on the characteristics of the heating pad, you may need to run it at higher or lower voltage, so you may need to connect multiple batteries in series to achieve a higher voltage, which may require a charge balancing scheme to control the battery charging across the different cells in series. They also make dedicated protection and/or charging chips for this as well. Alternatively, you might use a low-voltage pack with a switching DC-DC voltage converter.
As for the more general parts you might need like resistors, capacitors, ICs, transistors etc. there are dozens of electronics wholesalers that will sell these things. The FAQ lists a number of suppliers in Q3. The FAQ in general is a good resource with lots of links to various tutorials for how to get started in electronics:
https://www.electro-tech-online.com/threads/electronics-beginner-an-faq-for-newbies.145497/
Hopefully this is enough info to get started on. Good luck on your project!