We built this Twitch Extensions Starter Kit live on Twitch!
- Download comfykit.zip from the
download_this
folder in this repository and extract into your project's folder - Add comfykit.js and replace the link to JQuery to the Twitch extension URL in your
panel.html
(orvideo_component.html
orvideo_overlay.html
) andconfig.html
in thepublic
folder like this:
<script src="jquery.min.js"></script>
<script src="comfykit.js"></script>
- Run
npm install archiver
- Edit viewer.js (and config.js for configuration) for your Extension-related functionality and see it work in the Dev Rig's Extension Views tab
- When you're ready to publish, run
npm run package
to zip and upload to the Developer Dashboard - You made a Twitch Extension!
- Download this repository
git clone https://github.com/instafluff/TwitchComfyKit.git
- Run
npm install
- Edit comfykit.js for Extension-related functionality (public contains the starter Extension files)
- Run
npm run package
to zip and upload to the Developer Dashboard - You made a Twitch Extension!
Like these projects? The best way to support my open-source projects is by becoming a Comfy Sponsor on GitHub!
Come and hang out with us at the Comfiest Corner on Twitch!
Thank you too all the participants of this project!
Instafluff, Instafriend, katori15, RIKACHET, MacabreMan2, zivivi1, Patchshifter, That_MS_Gamer, Kyoslilmonster, Pixelgourmet, trufflette, mrkinix, villainthegreat, Deitypotato, MalForTheWin, momoske364, NinjaFalcon_2, nallaj, ElysiaGriffin, Abbyfabby, AntiViGames, al1sa074, UnconventionalBeing, lizardqueen, bloom_molly, rdmusser, Flippo13, bobthebuilderrrrr1, TotallyTerribleTaters, DEAD_P1XL, Chlapicek99, ravavyr, whistikk, thoastyk, HonestDanGames, MerlinLeWizard, VoiceOfGrog, Eragoth186, sciondragons, etisdew, Outfr0st, Chibigirl24, WhizardXL, Kr1999, mallesbixie, ultimation1, TheHungerService, Replemish, DevMerlin, pipskidoodle, Lord_of_Conquest, oto_9717, sheets2004, TheGeekGeneration, ConradReuter, MrRayKoma, Pearcington, LuckyPheathers, Betha, OhScee, koukris, BountyHunterLani, smellycats94, kingswerv, Teaky, Hugginator, SomaPills, PokemoHero, smilesandcode, DorkzillaI, MoltenSnowman, ERZ_TCat, valrossenOliver, Yosravi, Clarkio, clauzzzz, mrbinary001, chrishcode, Thedudeskee, DavidTheNewKid, malfunct, FuriousFur, DrArtemi, sparky_pugwash, anon_viewer, 土井津仁, UrbanNights, Riptidesan, zment, computernerd87, DoctorArgus, kpopsim, Nbmatt, codeheir, KevinTheUnicorn8, florants, quackman3, HeapSpray, thewrecker1080p, Kara_Kim, HunWalk, clubhouse13, JoeShimHae
Thanks to everyone that helped add the Usernames to Twitch IDs functionality as a utility!
Instafriend, Instafluff, ChatTranslator, Monkeyshoe10, Chibigirl24, BeadHappy, MacabreMan2, koralina_211, PaintHappy, stresstest, QeraiX, isaischannel, losthewar, zivivi1, MisakaGUN, DevMerlin, jellydance, OhScee, LuRiMer313, That_MS_Gamer, bloom_molly, knugensugen, trufflette, PokemoHero, sparky_pugwash, raleenakaos, brandan_f, igotinfected, ItsNaomiArt, Algoll, Rlchibi, EyeTeeGirl93, Kushimitama, malfunct, i4_insert_mode, blakeparsons12, smilesandcode, BungalowGlow, qerwtr546, fjaueiwgfbueawhnfa, FuriousFur, foxotic, DrJavaSaurus, kukji232, VoiceOfGrog, CrimsonKnightZero, cubbieblue4life, earnedplaces, mrkinix, MartyTheeMartian, kingswerv, Kyoslilmonster, GarethHubball, foobarius1, Zoraketh, CodeAndSystemSecurity, TheGrumpyGameDev, essenbee, Nordegraf, Keifleaf, gdphantom9867, Ayybiel, nallaj, NULLYUKI, KitAnnLIVE, DEAD_P1XL
- Install NodeJS - https://nodejs.org/en/
- Open the directory in a Command Prompt/Terminal
- Install Dependencies:
npm install
- Create a file named
.env
that looks like this:
PORT=8000 # You can change this to any port you wish
- Run Server:
npm start
- View the extension from your web browser! Panel: http://localhost:8000/panel.html Video Component: http://localhost:8000/video_component.html
- Look at comfykit.js for how to get started with Twitch Extension functionality!
The easiest way to setup the elements and layout of your extension is via Twitch's Sandbox and then Download the code.
- Visually setup your extension via Sandbox: https://glass.twitch.tv/extensions/sandbox
- Remove all starter code inside viewer.js
- Download the code
- Extract the zip into the public folder (overwrite the existing files)
- Add comfykit.js and replace the link to JQuery in your panel or video component to the Twitch extension URL like this:
<script src="jquery.min.js"></script>
<script src="comfykit.js"></script>
- Look at comfykit.js for how to get started with Twitch Extension functionality!
To package your Extension project, simply run npm run package
from the Command Prompt/Terminal and it will zip all files in the public folder into a file called uploadthis.zip. Each time you update your extension, you can package your code using this command.
To upload to Twitch:
- Create the Twitch Extension project in the Dashboard: https://dev.twitch.tv/dashboard
- Go to the Version tab and click Manage, then go to Version Assets
- Choose File and select the uploadthis.zip file and click Upload Assets
- Finally in Version Status, click Move to Hosted Test to make your Extension available in your Twitch Channel Dashboard (https://www.twitch.tv/[YOUR_USERNAME]/dashboard/extensions). You can install and add your uploaded Extension the same way you would add other extensions from this Dashboard page.
How to Use Extensions Guide: https://help.twitch.tv/customer/portal/articles/2861187-how-to-use-extensions