templates for self-hosting game jams (or any other kind of jam tbh)
1#!/usr/bin/env bash 2 3# makes sure we have up-to-date copies of the styles across all the projects 4# because this is a use case no one is prepared for apparently, me included 5# and now i have to build something to deal with the consequences 6 7# copy sass for zola, jekyll, hugo, wordpress 8cp -r _raw-assets/scss/* zola/sass/ 9cp -r _raw-assets/scss/* jekyll/_sass/ 10cp -r _raw-assets/scss/* hugo/scss/ 11cat _raw-assets/scss/style.scss >> wordpress/resources/css/app.scss 12echo "" >> wordpress/resources/css/app.scss 13echo "@source \"../views/\";" > wordpress/resources/css/app.scss 14echo "@source \"../../app/\";" >> wordpress/resources/css/app.scss 15cp -r _raw-assets/scss/_partials wordpress/resources/css/ 16 17# do a bunch of regex copying of partials for astro 18fontscss=$(cat _raw-assets/scss/_partials/_fonts.scss) 19variablescss=$(cat _raw-assets/scss/_partials/_variables.scss) 20globalcss=$(cat _raw-assets/scss/_partials/_global.scss) 21layoutcontent=$(cat astro/src/layouts/Layout.astro) 22 23homepagecss=$(cat _raw-assets/scss/_partials/_homepage.scss) 24homepagecontent=$(cat astro/src/components/Welcome.astro) 25submissionscss=$(cat _raw-assets/scss/_partials/_submissions.scss) 26submissionscontent=$(cat astro/src/components/Submissions.astro) 27gamecardcss=$(cat _raw-assets/scss/_partials/_game_list_item.scss) 28gamecardcontent=$(cat astro/src/components/GameCard.astro) 29 30echo "$layoutcontent" | perl -0777 -pe "s/<style lang=\"scss\">[\s\S]+$//gs" > astro/src/layouts/Layout.astro 31echo "<style lang=\"scss\">" >> astro/src/layouts/Layout.astro 32echo "$fontscss" >> astro/src/layouts/Layout.astro 33echo "$variablescss" >> astro/src/layouts/Layout.astro 34echo "$globalcss" >> astro/src/layouts/Layout.astro 35echo "</style>" >> astro/src/layouts/Layout.astro 36 37echo "$homepagecontent" | perl -0777 -pe "s/<style lang=\"scss\">[\s\S]+$//gs" > astro/src/components/Welcome.astro 38echo "<style lang=\"scss\">" >> astro/src/components/Welcome.astro 39echo "$homepagecss" >> astro/src/components/Welcome.astro 40echo "</style>" >> astro/src/components/Welcome.astro 41 42echo "$submissionscontent" | perl -0777 -pe "s/<style lang=\"scss\">[\s\S]+$//gs" > astro/src/components/Submissions.astro 43echo "<style lang=\"scss\">" >> astro/src/components/Submissions.astro 44echo "$submissionscss" >> astro/src/components/Submissions.astro 45echo "</style>" >> astro/src/components/Submissions.astro 46 47echo "$gamecardcontent" | perl -0777 -pe "s/<style lang=\"scss\">[\s\S]+$//gs" > astro/src/components/GameCard.astro 48echo "<style lang=\"scss\">" >> astro/src/components/GameCard.astro 49echo "$gamecardcss" >> astro/src/components/GameCard.astro 50echo "</style>" >> astro/src/components/GameCard.astro 51 52# copy assets to each project 53cp -r _raw-assets/images/* plain-html/images/ 54cp -r _raw-assets/images/* plain-php/images/ 55cp -r _raw-assets/images/* zola/static/images/ 56cp -r _raw-assets/images/* hugo/images/ 57cp -r _raw-assets/images/* wordpress/resources/images/ 58cp -r _raw-assets/images/* astro/src/assets/images/ 59 60# compile assets for wordpress 61cd wordpress 62bun i 63bun vite build 64cd ../ 65 66# compile scss for plain html and php 67sass _raw-assets/scss/style.scss plain-html/css/style.css 68sass _raw-assets/scss/style.scss plain-php/css/style.css