pstream is dead; long live pstream taciturnaxolotl.github.io/pstream-ng/
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add halloween easter egg and fix manifest

+101 -43
+71 -36
manifest.json
··· 16 16 { 17 17 "src": "public/android-chrome-512x512.png", 18 18 "sizes": "512x512", 19 - "type": "image/png" 19 + "type": "image/png", 20 + "purpose": "maskable" 20 21 }, 21 22 { 22 23 "src": "public/apple-touch-icon.png", 23 24 "sizes": "180x180", 24 - "type": "image/png" 25 + "type": "image/png", 26 + "purpose": "maskable" 25 27 }, 26 28 { 27 29 "src": "public/favicon-16x16.png", 28 30 "sizes": "16x16", 29 - "type": "image/png" 31 + "type": "image/png", 32 + "purpose": "any" 30 33 }, 31 34 { 32 35 "src": "public/favicon-32x32.png", 33 36 "sizes": "32x32", 34 - "type": "image/png" 37 + "type": "image/png", 38 + "purpose": "any" 35 39 }, 36 40 { 37 41 "src": "public/favicon.ico", 38 42 "sizes": "32x32", 39 - "type": "image/png" 43 + "type": "image/png", 44 + "purpose": "any" 40 45 }, 41 46 { 42 47 "src": "public/mstile-150x150.png", 43 48 "sizes": "150x150", 44 - "type": "image/png" 49 + "type": "image/png", 50 + "purpose": "any" 45 51 }, 46 52 { 47 53 "src": "public/splash_screens/icon.png", ··· 53 59 "src": "public/splash_screens/icon144x144.png", 54 60 "sizes": "144x144", 55 61 "type": "image/png", 56 - "purpose": "unset" 62 + "purpose": "any" 57 63 }, 58 64 { 59 65 "src": "public/splash_screens/4__iPhone_SE__iPod_touch_5th_generation_and_later_landscape.png", 60 66 "sizes": "1136x640", 61 - "type": "image/png" 67 + "type": "image/png", 68 + "purpose": "any" 62 69 }, 63 70 { 64 71 "src": "public/splash_screens/4__iPhone_SE__iPod_touch_5th_generation_and_later_portrait.png", 65 72 "sizes": "640x1136", 66 - "type": "image/png" 73 + "type": "image/png", 74 + "purpose": "any" 67 75 }, 68 76 { 69 77 "src": "public/splash_screens/8.3__iPad_Mini_landscape.png", 70 78 "sizes": "2266x1488", 71 - "type": "image/png" 79 + "type": "image/png", 80 + "purpose": "any" 72 81 }, 73 82 { 74 83 "src": "public/splash_screens/9.7__iPad_Pro__7.9__iPad_mini__9.7__iPad_Air__9.7__iPad_landscape.png", 75 84 "sizes": "1536x2048", 76 - "type": "image/png" 85 + "type": "image/png", 86 + "purpose": "any" 77 87 }, 78 88 { 79 89 "src": "public/splash_screens/9.7__iPad_Pro__7.9__iPad_mini__9.7__iPad_Air__9.7__iPad_portrait.png", 80 90 "sizes": "2048x1536", 81 - "type": "image/png" 91 + "type": "image/png", 92 + "purpose": "any" 82 93 }, 83 94 { 84 95 "src": "public/splash_screens8/10.2__iPad_landscape.png", 85 96 "sizes": "2160x1620", 86 - "type": "image/png" 97 + "type": "image/png", 98 + "purpose": "any" 87 99 }, 88 100 { 89 101 "src": "public/splash_screens8/10.5__iPad_Air_landscape.png", 90 102 "sizes": "2224x1668", 91 - "type": "image/png" 103 + "type": "image/png", 104 + "purpose": "any" 92 105 }, 93 106 { 94 107 "src": "public/splash_screens8/10.5__iPad_Air_portrait.png", 95 108 "sizes": "1668x2224", 96 - "type": "image/png" 109 + "type": "image/png", 110 + "purpose": "any" 97 111 }, 98 112 { 99 113 "src": "public/splash_screens8/10.9__iPad_Air_landscape.png", 100 114 "sizes": "2360x1640", 101 - "type": "image/png" 115 + "type": "image/png", 116 + "purpose": "any" 102 117 }, 103 118 { 104 119 "src": "public/splash_screens8/11__iPad_Pro__10.5__iPad_Pro_landscape.png", 105 120 "sizes": "2388x1668", 106 - "type": "image/png" 121 + "type": "image/png", 122 + "purpose": "any" 107 123 }, 108 124 { 109 125 "src": "public/splash_screens8/12.9__iPad_Pro_landscape.png", 110 126 "sizes": "2732x2048", 111 - "type": "image/png" 127 + "type": "image/png", 128 + "purpose": "any" 112 129 }, 113 130 { 114 131 "src": "public/splash_screens8/12.9__iPad_Pro_portrait.png", 115 132 "sizes": "2048x2732", 116 - "type": "image/png" 133 + "type": "image/png", 134 + "purpose": "any" 117 135 }, 118 136 { 119 137 "src": "public/splash_screens8/12.iPhone_8__iPhone_7__iPhone_6s__iPhone_6__4.7__iPhone_SE_landscape.png", 120 138 "sizes": "1334x750", 121 - "type": "image/png" 139 + "type": "image/png", 140 + "purpose": "any" 122 141 }, 123 142 { 124 143 "src": "public/splash_screens/8iPhone_8__iPhone_7__iPhone_6s__iPhone_6__4.7__iPhone_SE_portrait.png", 125 144 "sizes": "750x1334", 126 - "type": "image/png" 145 + "type": "image/png", 146 + "purpose": "any" 127 147 }, 128 148 { 129 149 "src": "public/splash_screens/8iPhone_8_Plus__iPhone_7_Plus__iPhone_6s_Plus__iPhone_6_Plus_landscape.png", ··· 133 153 { 134 154 "src": "public/splash_screens/8iPhone_8_Plus__iPhone_7_Plus__iPhone_6s_Plus__iPhone_6_Plus_portrait.png", 135 155 "sizes": "1242x2208", 136 - "type": "image/png" 156 + "type": "image/png", 157 + "purpose": "any" 137 158 }, 138 159 { 139 160 "src": "public/splash_screens/iPhone_11__iPhone_XR_landscape.png", 140 161 "sizes": "1792x828", 141 - "type": "image/png" 162 + "type": "image/png", 163 + "purpose": "any" 142 164 }, 143 165 { 144 166 "src": "public/splash_screens/iPhone_11__iPhone_XR_portrait.png", 145 167 "sizes": "828x1792", 146 - "type": "image/png" 168 + "type": "image/png", 169 + "purpose": "any" 147 170 }, 148 171 { 149 172 "src": "public/splash_screens/iPhone_11_Pro_Max__iPhone_XS_Max_landscape.png", 150 173 "sizes": "2688x1242", 151 - "type": "image/png" 174 + "type": "image/png", 175 + "purpose": "any" 152 176 }, 153 177 { 154 178 "src": "public/splash_screens/iPhone_11_Pro_Max__iPhone_XS_Max_portrait.png", 155 179 "sizes": "1242x2688", 156 - "type": "image/png" 180 + "type": "image/png", 181 + "purpose": "any" 157 182 }, 158 183 { 159 184 "src": "public/splash_screens/iPhone_13_mini__iPhone_12_mini__iPhone_11_Pro__iPhone_XS__iPhone_X_landscape.png", 160 185 "sizes": "2436x1125", 161 - "type": "image/png" 186 + "type": "image/png", 187 + "purpose": "any" 162 188 }, 163 189 { 164 190 "src": "public/splash_screens/iPhone_13_mini__iPhone_12_mini__iPhone_11_Pro__iPhone_XS__iPhone_X_portrait.png", 165 191 "sizes": "1125x2436", 166 - "type": "image/png" 192 + "type": "image/png", 193 + "purpose": "any" 167 194 }, 168 195 { 169 196 "src": "public/splash_screens/iPhone_14__iPhone_13_Pro__iPhone_13__iPhone_12_Pro__iPhone_12_landscape.png", 170 197 "sizes": "2532x1170", 171 - "type": "image/png" 198 + "type": "image/png", 199 + "purpose": "any" 172 200 }, 173 201 { 174 202 "src": "public/splash_screens/iPhone_14__iPhone_13_Pro__iPhone_13__iPhone_12_Pro__iPhone_12_portrait.png", 175 203 "sizes": "1170x2532", 176 - "type": "image/png" 204 + "type": "image/png", 205 + "purpose": "any" 177 206 }, 178 207 { 179 208 "src": "public/splash_screens/iPhone_14_Plus__iPhone_13_Pro_Max__iPhone_12_Pro_Max_landscape.png", 180 209 "sizes": "2778x1284", 181 - "type": "image/png" 210 + "type": "image/png", 211 + "purpose": "any" 182 212 }, 183 213 { 184 214 "src": "public/splash_screens/iPhone_14_Plus__iPhone_13_Pro_Max__iPhone_12_Pro_Max_portrait.png", 185 215 "sizes": "1284x2778", 186 - "type": "image/png" 216 + "type": "image/png", 217 + "purpose": "any" 187 218 }, 188 219 { 189 220 "src": "public/splash_screens/iPhone_15_Pro__iPhone_15__iPhone_14_Pro_landscape.png", 190 221 "sizes": "2556x1179", 191 - "type": "image/png" 222 + "type": "image/png", 223 + "purpose": "any" 192 224 }, 193 225 { 194 226 "src": "public/splash_screens/iPhone_15_Pro__iPhone_15__iPhone_14_Pro_portrait.png", 195 227 "sizes": "1179x2556", 196 - "type": "image/png" 228 + "type": "image/png", 229 + "purpose": "any" 197 230 }, 198 231 { 199 232 "src": "public/splash_screens/iPhone_15_Pro_Max__iPhone_15_Plus__iPhone_14_Pro_Max_landscape.png", 200 233 "sizes": "2796x1290", 201 - "type": "image/png" 234 + "type": "image/png", 235 + "purpose": "any" 202 236 }, 203 237 { 204 238 "src": "public/splash_screens/iPhone_15_Pro_Max__iPhone_15_Plus__iPhone_14_Pro_Max_portrait.png", 205 239 "sizes": "1290x2796", 206 - "type": "image/png" 240 + "type": "image/png", 241 + "purpose": "any" 207 242 } 208 243 ] 209 244 }
+1 -1
public/config.js
··· 12 12 VITE_NORMAL_ROUTER: false, 13 13 14 14 // The backend URL to communicate with, defaults to the movie-web hosted one at backend.movie-web.app 15 - VITE_BACKEND_URL: "https://sudo-flix-backend.lol", 15 + VITE_BACKEND_URL: "https://sudo-flix-backend.lol", // "https://mw-backend.lonelil.com", 16 16 17 17 // A comma separated list of disallowed IDs in the case of a DMCA claim - in the format "series-<id>" and "movie-<id>" 18 18 VITE_DISALLOWED_IDS: ""
public/lightbar-images/ghost.png

This is a binary file and will not be displayed.

public/lightbar-images/pumpkin.png

This is a binary file and will not be displayed.

public/lightbar-images/santa.png

This is a binary file and will not be displayed.

+29 -6
src/components/utils/Lightbar.tsx
··· 152 152 const date = new Date(); 153 153 const month = date.getMonth(); 154 154 const day = date.getDate(); 155 - if (month === 11 && day >= 24 && day <= 26) { 155 + if ( 156 + (month === 11 && day >= 24 && day <= 26) || 157 + Math.floor(Math.random() * 380) > 40 158 + ) { 156 159 imageOverride = [ 157 160 { 158 161 image: "/lightbar-images/snowflake.svg", 159 - sizeRange: [4, 15] as [number, number], 162 + sizeRange: [12, 20] as [number, number], 160 163 }, 161 164 { 162 165 image: "/lightbar-images/santa.png", 163 - sizeRange: [15, 30] as [number, number], 166 + sizeRange: [25, 35] as [number, number], 164 167 }, 165 168 ]; 166 169 imageParticleCount = particleCount * 0.1; 167 170 } 168 171 172 + // Halloween overrides 173 + const month2 = date.getMonth(); 174 + const day2 = date.getDate(); 175 + if ( 176 + (month2 === 9 && day2 >= 29 && day2 <= 31) || 177 + Math.floor(Math.random() * 50) > 48 178 + ) { 179 + imageOverride = [ 180 + { 181 + image: "/lightbar-images/ghost.png", 182 + sizeRange: [28, 31] as [number, number], 183 + }, 184 + { 185 + image: "/lightbar-images/pumpkin.png", 186 + sizeRange: [28, 31] as [number, number], 187 + }, 188 + ]; 189 + imageParticleCount = particleCount * 0.09; 190 + } 191 + 169 192 // Fish easter egg 170 193 const shouldShowFishie = Math.floor(Math.random() * 73) > 69; 171 194 if (shouldShowFishie) { ··· 183 206 } 184 207 185 208 // Weed easter egg 186 - const month2 = date.getMonth() + 1; 187 - const day2 = date.getDate(); 209 + const month3 = date.getMonth() + 1; 210 + const day3 = date.getDate(); 188 211 const shouldShowZa = 189 - (month2 === 4 && day2 === 20) || Math.floor(Math.random() * 435) > 420; 212 + (month3 === 4 && day3 === 20) || Math.floor(Math.random() * 435) > 420; 190 213 if (shouldShowZa) { 191 214 imageOverride = [ 192 215 {