Oraxen is a minecraft plugin which allows to easily exploit new Minecraft 1.14 features in order to create new items with custom textures. It handles the resourcepack generation, upload (using Polymath) , is fully open source and has an extensible API.
When a Spigot server starts with oraxen installed, the plugin will read all the item configurations and use them to generate json models to link your png textures to your items. It will zip the resources using an optimized algorithm and upload it to a polymath instance. Polymath is a free and opensource software written in Python to host minecraft resourcepacks. By default oraxen will use my own instance, hosted in Switzerland on an oracle virtual private server. When a player will connect to your server, oraxen will link him to the polymath instance which will server him the resourcepack.
Installing Oraxen is a fairly straight forward process: drop Oraxen.jar and ProtocolLib to your /plugins/ folder and restart your server.
Don't want to use ProtocolLib? You can use Oraxen without it but you'll have to disable some mechanics. You'll get the list soon.