Skip to content

Commit

Permalink
Cache pictures at service worker
Browse files Browse the repository at this point in the history
  • Loading branch information
easafe committed Jul 5, 2024
1 parent efe8eef commit 30a55ff
Show file tree
Hide file tree
Showing 4 changed files with 49 additions and 12 deletions.
21 changes: 18 additions & 3 deletions file/default/manifest.json
Original file line number Diff line number Diff line change
@@ -1,17 +1,32 @@
{
"theme_color": "#213027",
"theme_color": "#db5a5d",
"start_url": "/im",
"orientation": "any",
"name": "MeroChat - Friendly Random Chat",
"short_name": "MeroChat",
"display": "standalone",
"background_color": "#213027",
"description": "Platonic only, karma based random chat",
"description": "Platonic only, karma based, 1v1 random chat",
"icons": [
{
"src": "/file/default/loading.png",
"sizes": "46x46",
"type": "image/png"
},
{
"src": "/file/default/logo.png",
"sizes": "46x46",
"type": "image/png"
},
{
"src": "/file/default/logo-3-small.png",
"sizes": "33x33",
"type": "image/png"
},
{
"src": "/file/default/logo-small.png",
"sizes": "39x39",
"type": "image/png"
}
]
}
}
34 changes: 28 additions & 6 deletions file/default/sw.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,29 @@
self.addEventListener('install', (e) => {
e.waitUntil((async () => {
// let cache = await caches.open(cacheName);
importScripts('https://storage.googleapis.com/workbox-cdn/releases/6.4.1/workbox-sw.js');

// await cache.addAll(contentToCache);
})());
});
let { registerRoute } = workbox.routing;
let { CacheFirst } = workbox.strategies;
let { CacheableResponsePlugin } = workbox.cacheableResponse;

//cache pictures
let imageRoute =
new Route(
({ request }) => request.destination === 'image',
new CacheFirst({
cacheName: 'mero-pics',
plugins: [
new CacheableResponsePlugin({
statuses: [200]
})
]})
);

registerRoute(imageRoute);

self.addEventListener('install', _ => {});

//store chats and user data localy with indexeddb?
//this would also require some sort of caching of the im page
// and js/css scripts
// and to enable multiple open sessions too
//show push notifications
//open links in external browser
2 changes: 1 addition & 1 deletion src/Server/3000/Data.purs
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ grammaticalClasses =
[ Tuple 8 [ "Grateful", "Strident", "Vigilant", "Thorough", "Splendid", "Grounded", "Attached", "Academic", "Adorable", "Metallic", "Granular", "Trusting", "Exciting", "Possible", "Ordinary", "Nautical", "Gruesome", "Thankful", "Creative", "Absolute", "Shocking", "Well-lit", "Colossal", "Jubilant", "Innocent", "Gracious", "Idolized", "Charming", "Confused", "Alarming", "Artistic", "Composed", "Anchored", "Unsteady", "Lustrous", "Majestic", "Decisive", "Precious", "Suburban", "Informal", "Distinct", "Familiar", "Advanced", "Scratchy", "Haunting", "Cheerful", "Critical", "Gleaming", "Agitated", "Careless", "Squiggly", "Impolite", "Cultured", "Fabulous", "Indolent", "Finished", "Writhing", "Striking", "Fearless", "Trifling", "Harmless", "Punctual", "Terrible", "Clueless", "Euphoric", "Favorite", "Fatherly", "Educated", "Positive", "Obedient", "Ironclad", "Friendly", "Gigantic", "Vigorous", "Vengeful", "Reckless", "Carefree", "Truthful", "Terrific", "Negative", "Horrible", "Quixotic", "Tempting", "Infamous", "Well-off", "Discrete", "Bustling", "Tattered", "Definite", "Wretched", "Straight", "Motherly", "Blushing", "Circular", "Detailed", "Pleasant", "Pristine", "Gripping", "Studious", "Intrepid", "Lopsided", "Physical", "Whopping", "Reliable", "Precious", "Internal", "Infinite", "Growling", "Pleasing", "Uncommon", "Spotless", "Constant", "Variable", "Standard", "Ecstatic", "Sardonic", "Flawless", "Fruitful", "Deserted", "Untimely", "Sociable", "Puzzling", "Snarling", "Dazzling", "Forsaken", "Helpless", "Generous", "Unwieldy", "Concrete", "Valuable", "Animated", "Original", "Utilized", "Blissful", "Mindless", "Grizzled", "Outlying", "Polished", "Cautious", "Required", "Handmade", "Aromatic", "Watchful", "Gullible", "Unfolded", "Glorious", "Rotating", "Specific", "Esteemed", "Stunning", "Relieved", "Wrathful", "Peaceful", "Faithful", "Menacing", "Spiteful", "Accurate", "Crushing", "Troubled", "Complete", "Perfumed", "Personal", "Graceful", "Powerful", "Colorful", "Criminal", "Separate", "Periodic", "Heavenly", "Disloyal", "Slippery", "Skeletal", "Electric", "Probable", "Parallel", "Luminous", "Spirited", "Previous", "Frequent", "Sizzling", "Outgoing", "Superior", "Dramatic", "Scornful", "Flippant", "Adorable", "Unlawful", "Tangible", "Diligent", "Fragrant", "Youthful", "Juvenile", "Forceful", "Ultimate", "Fumbling", "Athletic", "Official", "Gorgeous", "Insecure", "Virtuous" ]
, Tuple 9 [ "Scholarly", "Delicious", "Indelible", "Misguided", "Excellent", "Unwilling", "Far-flung", "Glamorous", "Wonderful", "Insidious", "Unhealthy", "Impartial", "Wide-eyed", "Pointless", "Concerned", "Venerated", "Identical", "Necessary", "Brilliant", "Unnatural", "Yellowish", "Practical", "Satisfied", "Mortified", "Unsightly", "Insistent", "Qualified", "Evergreen", "Long-term", "Lumbering", "Memorable", "Imperfect", "Worrisome", "Distorted", "Political", "Well-made", "Agreeable", "Difficult", "Unequaled", "Competent", "Agonizing", "Important", "Realistic", "Monstrous", "Traumatic", "Sparkling", "Disguised", "Rewarding", "Neglected", "Flustered", "Luxurious", "Miserable", "Whispered", "Unwelcome", "Overjoyed", "Fortunate", "Marvelous", "Talkative", "Foolhardy", "Repentant", "Downright", "Surprised", "Querulous", "Firsthand", "Breakable", "Bewitched", "Imaginary", "Fantastic", "Essential", "Excitable", "Shameless", "Turbulent", "Acrobatic", "Exhausted", "Deafening", "Dishonest", "Unwritten", "Favorable", "Vivacious", "Dependent", "Ambitious", "Energetic", "Admirable", "Cavernous", "Heartfelt", "Offensive", "Unwitting", "Delirious", "Defensive", "Emotional", "Expensive", "Quizzical", "Miniature", "Clear-cut", "Enchanted", "Nocturnal", "Abandoned", "Ill-fated", "Demanding", "Spherical", "Deficient", "Acclaimed", "Palatable", "Judicious", "Beautiful", "Powerless", "Elaborate", "Sarcastic", "Grandiose", "Well-worn", "Downright", "Infantile", "Conscious", "Sorrowful", "Different", "Authentic", "Whirlwind", "Honorable", "Cluttered", "Pertinent", "Quarterly", "Grotesque", "Revolving", "Immediate", "Frivolous", "Repulsive", "Automatic", "Treasured", "Alienated", "Courteous", "Unselfish", "Hilarious", "Anguished", "Plaintive", "Whimsical", "Exemplary", "Worthless", "Secondary", "Colorless", "Bountiful", "Attentive", "Dangerous" ]
, Tuple 5 [ "Minor", "Musty", "Happy", "Round", "Rowdy", "Muddy", "Ideal", "Blank", "White", "Fancy", "Smart", "Noisy", "Wrong", "Unfit", "Quick", "Major", "Joint", "Blind", "Rural", "Regal", "Dense", "Corny", "Early", "Frail", "Brisk", "Every", "Nifty", "Fixed", "Clear", "Weird", "Sandy", "Heavy", "Lumpy", "Flaky", "Sharp", "Scaly", "Scary", "Harsh", "Noted", "Salty", "Light", "Plush", "Meaty", "Sweet", "Black", "Chief", "Grave", "Wordy", "Jumpy", "Super", "Muted", "Sunny", "Curly", "Ample", "Soupy", "Adept", "Fussy", "Tense", "Young", "Equal", "Blond", "Stale", "Close", "These", "Loyal", "Naive", "Pushy", "Soggy", "Agile", "Husky", "Proud", "Jolly", "Front", "Novel", "Pesky", "Mushy", "Third", "Tepid", "Legal", "Bumpy", "Vague", "Fuzzy", "Tubby", "Funny", "Short", "Milky", "Other", "Bogus", "Prime", "Stark", "Upset", "Quiet", "Grown", "Witty", "Mealy", "Valid", "Brief", "Brown", "Steep", "Those", "Which", "Misty", "Brave", "Bulky", "Total", "Whole", "Merry", "Hefty", "Rusty", "Kooky", "Baggy", "Known", "Fluid", "Vivid", "Tired", "Clean", "Hasty", "Small", "Fresh", "Lucky", "Green", "Plain", "Urban", "Staid", "Prize", "Runny", "Vapid", "Royal", "Murky", "Silly", "Bland", "Leafy", "Alive", "Frank", "Right", "Rough", "Weary", "Tough", "Cruel", "Messy", "Spicy", "Livid", "Great", "Eager", "Bowed", "Lanky", "Weepy", "Loose", "Grimy", "Shiny", "Itchy", "False", "Ready", "Hairy", "Ruddy", "Angry", "Jaded", "Jumbo", "Empty", "Crisp", "Fatal", "Bossy", "Moral", "First", "Giddy", "Woozy", "Rapid", "Moist", "Faint", "Dizzy", "Steel", "Glass", "Aware", "Minty", "Dopey", "Gross", "Yummy", "Zesty", "Grand", "Lined", "Gummy", "Tight", "Vital", "Solid", "Silky", "Basic", "Bleak", "Burly", "Swift", "Tasty", "Handy", "Alert", "Testy", "Windy", "Dirty", "Utter", "Giant", "Showy", "Mixed", "Shady" ]
, Tuple 6 [ "Closed", "Somber", "Hoarse", "Flimsy", "Annual", "Giving", "Medium", "Humble", "Feisty", "Poised", "Zigzag", "Intent", "Ringed", "Amused", "Common", "Feline", "Coarse", "Expert", "Clumsy", "Square", "Bitter", "Lively", "Creepy", "Warped", "Pretty", "Subtle", "Sweaty", "Nimble", "Fickle", "Strict", "Shoddy", "Pastel", "Unripe", "Dreary", "Untidy", "Stormy", "Barren", "Famous", "Stable", "Homely", "Severe", "Frosty", "Putrid", "Untrue", "Hearty", "Sneaky", "Shabby", "Frugal", "Oblong", "Greedy", "Edible", "Direct", "Hidden", "Acidic", "Silver", "Sugary", "Sudden", "Usable", "Mellow", "Cloudy", "Wilted", "Silent", "Female", "Lonely", "Actual", "Tragic", "Bronze", "Unruly", "Entire", "Fluffy", "Loving", "Grumpy", "Liquid", "Oblong", "Modest", "Paltry", "Droopy", "Slushy", "Creamy", "Secret", "Decent", "Wobbly", "Quirky", "Measly", "Thorny", "Hollow", "Lavish", "Klutzy", "Queasy", "Inborn", "Stingy", "Guilty", "Bouncy", "Upbeat", "Strong", "Unsung", "Knobby", "Normal", "Linear", "Gentle", "Hungry", "Sleepy", "Yellow", "Smooth", "Gloomy", "Boring", "Frayed", "Pricey", "Polite", "French", "Formal", "Robust", "Watery", "Uneven", "Joyful", "Second", "Little", "Trusty", "Useful", "Flawed", "Frizzy", "Wiggly", "Ragged", "Joyous", "Kindly", "Jaunty", "Dental", "Superb", "Yearly", "Costly", "Winged", "Drafty", "Tender", "Gifted", "Cheery", "Forked", "Dapper", "Dreary", "Timely", "Wooden", "Frozen", "Mature", "Crafty", "Single", "Stupid", "Golden", "Lawful", "Flashy", "Glossy", "Aching", "Doting", "Frilly", "Snappy", "Wicked", "Sinful", "Kosher", "Speedy", "Dismal", "Elated", "Exotic", "Modern", "Portly", "Starry", "Unique", "United", "Bright", "Impish", "Jagged", "Honest", "Remote", "Quaint", "Knotty", "Narrow", "Smoggy", "Sparse", "Impure", "Tricky", "Chilly", "Active", "Skinny", "Proper", "Afraid", "Rotten", "Worthy", "Cooked", "Scarce", "Violet", "Scared", "Filthy", "Purple", "Arctic", "Likely", "Clever", "Shrill", "Canine", "Weekly", "Orange", "Better", "Lovely", "Webbed", "Spiffy", "Woeful", "Double", "Candid", "Dismal", "Adored", "Unused", "Jovial", "Ornery", "Cuddly", "Svelte", "Caring", "Frigid", "Broken", "Junior", "Sturdy", "Ornate", "Serene", "Tinted", "Deadly", "Bubbly", "Recent", "Grubby", "Slight", "Meager", "Snoopy", "Vacant", "Simple", "Daring" ]
, Tuple 6 [ "Closed", "Somber", "Hoarse", "Flimsy", "Annual", "Giving", "Medium", "Humble", "Feisty", "Poised", "Zigzag", "Intent", "Ringed", "Amused", "Common", "Feline", "Coarse", "Expert", "Clumsy", "Square", "Bitter", "Lively", "Creepy", "Warped", "Pretty", "Subtle", "Sweaty", "Nimble", "Fickle", "Strict", "Shoddy", "Pastel", "Unripe", "Dreary", "Untidy", "Stormy", "Barren", "Famous", "Stable", "Homely", "Severe", "Frosty", "Putrid", "Untrue", "Hearty", "Sneaky", "Shabby", "Frugal", "Oblong", "Greedy", "Edible", "Direct", "Hidden", "Acidic", "Silver", "Sugary", "Sudden", "Usable", "Mellow", "Cloudy", "Wilted", "Silent", "Female", "Lonely", "Actual", "Tragic", "Bronze", "Unruly", "Entire", "Fluffy", "Loving", "Grumpy", "Liquid", "Oblong", "Modest", "Paltry", "Droopy", "Slushy", "Creamy", "Secret", "Decent", "Wobbly", "Quirky", "Measly", "Thorny", "Hollow", "Lavish", "Klutzy", "Queasy", "Inborn", "Stingy", "Guilty", "Bouncy", "Upbeat", "Strong", "Unsung", "Knobby", "Normal", "Linear", "Gentle", "Hungry", "Sleepy", "Yellow", "Smooth", "Gloomy", "Boring", "Frayed", "Pricey", "Polite", "French", "Formal", "Robust", "Watery", "Uneven", "Joyful", "Second", "Little", "Trusty", "Useful", "Flawed", "Frizzy", "Wiggly", "Ragged", "Joyous", "Kindly", "Jaunty", "Dental", "Superb", "Yearly", "Costly", "Winged", "Drafty", "Tender", "Gifted", "Cheery", "Forked", "Dapper", "Dreary", "Timely", "Wooden", "Frozen", "Mature", "Crafty", "Single", "Stupid", "Golden", "Lawful", "Flashy", "Glossy", "Aching", "Doting", "Frilly", "Snappy", "Wicked", "Kosher", "Speedy", "Dismal", "Elated", "Exotic", "Modern", "Portly", "Starry", "Unique", "United", "Bright", "Impish", "Jagged", "Honest", "Remote", "Quaint", "Knotty", "Narrow", "Smoggy", "Sparse", "Impure", "Tricky", "Chilly", "Active", "Skinny", "Proper", "Afraid", "Rotten", "Worthy", "Cooked", "Scarce", "Violet", "Scared", "Filthy", "Purple", "Arctic", "Likely", "Clever", "Shrill", "Canine", "Weekly", "Orange", "Better", "Lovely", "Webbed", "Spiffy", "Woeful", "Double", "Candid", "Dismal", "Adored", "Unused", "Jovial", "Ornery", "Cuddly", "Svelte", "Caring", "Frigid", "Broken", "Junior", "Sturdy", "Ornate", "Serene", "Tinted", "Deadly", "Bubbly", "Recent", "Grubby", "Slight", "Meager", "Snoopy", "Vacant", "Simple", "Daring" ]
, Tuple 4 [ "Left", "Lost", "Torn", "Damp", "Keen", "Fake", "Soft", "Blue", "Rare", "Wide", "Puny", "Tart", "Loud", "Cool", "Numb", "Vain", "Nice", "Near", "Good", "Calm", "Rash", "Fast", "Next", "Posh", "Used", "Poor", "Bold", "Lone", "Smug", "Tidy", "Cold", "Wild", "Lame", "Kind", "Each", "Neat", "Wavy", "Sane", "Live", "Past", "Sore", "Evil", "Fond", "Ripe", "Pure", "Bony", "Worn", "Drab", "Fine", "Wary", "Taut", "Tiny", "That", "Glum", "Oval", "Lean", "Flat", "Some", "Cute", "Rich", "Late", "Spry", "Slow", "Open", "Only", "Wise", "Pink", "Able", "Back", "Zany", "Dear", "Full", "Thin", "Oily", "Pale", "Sick", "Real", "Hard", "Dual", "Deep", "This", "Sour", "Safe", "Even", "Aged", "Best", "Vast", "Both", "Trim", "Easy", "Last", "Dark", "High", "Warm", "Mild", "Tall", "Slim", "Twin", "Free", "Busy", "True", "Lazy", "Arid", "Same", "Dull", "Half", "Wiry", "Grim", "Meek", "Gray", "Fair", "Dead", "Idle", "Rosy", "Tame", "Mean" ]
, Tuple 11 [ "Sure-footed", "Enlightened", "Cylindrical", "Magnificent", "Prestigious", "Comfortable", "Embarrassed", "Extroverted", "Defenseless", "Embellished", "Illustrious", "Impractical", "Aggravating", "Extra-small", "Kindhearted", "Considerate", "Understated", "Pessimistic", "Frightening", "Big-hearted", "Trustworthy", "Responsible", "Experienced", "Mountainous", "Unimportant", "Cooperative", "Sympathetic", "Warmhearted", "Coordinated", "Outstanding", "Unfortunate", "Neighboring", "Complicated", "Imaginative", "Adventurous", "Intelligent", "Substantial", "Astonishing", "Interesting", "Quarrelsome", "Spectacular", "Appropriate", "Superficial", "Impassioned", "Sentimental", "Waterlogged", "Unconscious", "Descriptive", "Rectangular", "Intentional", "Instructive", "Calculating", "Everlasting", "Unrealistic", "Second-hand" ]
, Tuple 12 [ "Multicolored", "Incomparable", "Good-natured", "Questionable", "Self-assured", "Apprehensive", "Accomplished", "Ill-informed", "Self-reliant", "Conventional", "Incompatible", "Lighthearted", "Unacceptable", "Quick-witted", "Affectionate", "Hard-to-find" ]
Expand Down
4 changes: 2 additions & 2 deletions src/Server/Faq.purs
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ faq =
, HE.h2 [ HA.id "canifilter" ] "Can I filter suggestions by gender/location/etc?"
, HE.p_ "You may skip suggestions, but it is not possible to filter them in any way. MeroChat tries its best to give you quality people to talk to, but the fun is in discovering"
, HE.h2 [ HA.id "dating" ] "Is MeroChat a dating/hookup app?"
, HE.p_ "No. MeroChat is for friendly conversations only, there is already plenty of other places for try getting laid"
, HE.p_ "No. MeroChat is for friendly conversations only, there is already plenty of other places for trying to get laid"
, HE.h2 [ HA.id "isitfree" ] "Is MeroChat free?"
, HE.p_ "Yes! The app is totally free and there is no ads. MeroChat runs on donations from people who like it enough (or might just be after the rewards, who can tell)"
, HE.h2 [ HA.id "whatskarma" ] "What is karma?"
Expand All @@ -51,6 +51,6 @@ faq =
, HE.p_
[ HE.text "Right?! If you can spare some, consider backing MeroChat. The entire "
, HE.a [ HA.href "https://github.com/typestruck/merochat", HA.target "_blank" ] "source code"
, HE.text " is also open source in case this is your thing. That being said, just letting others know about MeroChat is already a huge help. Reporting bugs, bad user behavior or other issues is also highly appreciated"
, HE.text " is also freely avaible in case this is your thing. That being said, just letting others know about MeroChat is already a huge help. Reporting bugs, bad user behavior or other issues is also highly appreciated"
]
]

0 comments on commit 30a55ff

Please sign in to comment.