Either or both. And if a community developer creates a device handler it can then be submitted for official publication.
There are a lot of community members who enjoy developing new device handlers and are happy to share them with the community. Or if you want to try writing your own, you can also get a lot of peer assistance with that. Or you can just add the device to the “suggest a device” topic and hope that SmartThings staff get around to it eventually. Your choice.