22 Commits

Author SHA1 Message Date
renovate[bot]
539ad59869 Update dependency eslint-plugin-vue to v10 2025-04-18 20:30:01 +00:00
Dave Gallant
fd51e7364b Change DNS and other small tweaks 2025-04-18 16:29:12 -04:00
renovate[bot]
5d31dc83cb Update dependency bootstrap to v5.3.5 (#218)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-05 06:47:35 -04:00
renovate[bot]
4414aa4310 Update dependency @babel/eslint-parser to v7.27.0 (#217)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-28 22:58:59 -04:00
renovate[bot]
03af1b65ca Update module github.com/rs/zerolog to v1.34.0 (#216)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-21 22:58:48 -04:00
renovate[bot]
7d01083ba8 Update dependency axios to v1.8.4 (#215)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-21 22:56:05 -04:00
renovate[bot]
373a4d0186 Update dependency postcss-cli to v11.0.1 (#214)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-15 08:52:40 -04:00
renovate[bot]
98d5be8d5c Update dependency axios to v1.8.3 (#213)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-15 08:52:32 -04:00
renovate[bot]
e9a60c95f7 Update babel monorepo to v7.26.10 (#212)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-15 08:52:22 -04:00
renovate[bot]
d713534616 Update dependency eslint-plugin-vue to v9.33.0 (#210)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-07 22:04:32 -05:00
renovate[bot]
2a6fcbd184 Update dependency axios to v1.8.2 (#209)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-07 22:02:21 -05:00
renovate[bot]
727a9336a4 Update dependency core-js to v3.41.0 (#208)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-01 16:17:06 -05:00
renovate[bot]
dc13d241bf Update dependency axios to v1.8.1 (#207)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-28 21:23:34 -05:00
renovate[bot]
a45aec3abc Update docker/dockerfile Docker tag to v1.14 (#206)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-21 22:38:39 -05:00
renovate[bot]
4ff537c08f Update docker/dockerfile Docker tag to v1.13 (#202)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-15 08:07:53 -05:00
renovate[bot]
e20e7121d8 Update dependency @babel/core to v7.26.9 (#204)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-14 21:24:25 -05:00
renovate[bot]
09ba6e6e2a Update module github.com/dlclark/regexp2 to v1.11.5 (#205)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-14 21:24:11 -05:00
renovate[bot]
d2258f6c36 Update babel monorepo to v7.26.8 (#203)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-09 14:33:30 -05:00
Dave Gallant
5dd59be6aa Only refresh topics if the list is non-empty
If the rfd api returns an empty list of topics (i.e. it's down), do not refresh
the topics list.
2025-01-25 15:15:03 -05:00
renovate[bot]
77ad9f82a1 Update dependency @babel/core to v7.26.7 (#201)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-24 20:04:45 -05:00
Dave Gallant
c332d7b0f2 Replace Google analytics with Umami analytics 2025-01-12 12:29:00 -05:00
renovate[bot]
7dc8d88c5a Update dependency core-js to v3.40.0 (#200)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-11 07:42:44 -05:00
11 changed files with 2591 additions and 2138 deletions

View File

@@ -1,4 +1,4 @@
rfd.fyi
rfd.davegallant.ca
file_server

View File

@@ -4,8 +4,6 @@ This repository provides a simple, less-distracting overlay for hot deals posted
The frontend is made with Vue 3 and the backend is written in Go. The backend exists for caching purposes; to prevent excessive requests to RedFlagDeals itself.
It is hosted at [rfd.fyi](https://rfd.fyi).
## Local Development
To get up and running locally: in one pane/tab, run:

View File

@@ -1,4 +1,4 @@
# syntax=docker/dockerfile:1.12
# syntax=docker/dockerfile:1.14
FROM cgr.dev/chainguard/go:latest as build
WORKDIR /src

View File

@@ -91,12 +91,15 @@ func (a *App) refreshTopics() {
for {
log.Info().Msg("Refreshing topics")
latestTopics := a.getDeals(9, 1, 6)
if len(latestTopics) > 0 {
latestTopics = a.updateScores(latestTopics)
log.Info().Msg("Refreshing redirects")
latestRedirects := a.getRedirects()
a.Redirects = latestRedirects
a.CurrentTopics = a.stripRedirects(latestTopics)
}
a.LastRefresh = time.Now()
rand.Seed(time.Now().UnixNano())

View File

@@ -3,10 +3,10 @@ module github.com/davegallant/rfd-fyi
go 1.18
require (
github.com/dlclark/regexp2 v1.11.4
github.com/dlclark/regexp2 v1.11.5
github.com/gorilla/mux v1.8.1
github.com/joho/godotenv v1.5.1
github.com/rs/zerolog v1.33.0
github.com/rs/zerolog v1.34.0
)
require (

View File

@@ -9,6 +9,8 @@ github.com/dlclark/regexp2 v1.11.2 h1:/u628IuisSTwri5/UKloiIsH8+qF2Pu7xEQX+yIKg6
github.com/dlclark/regexp2 v1.11.2/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8=
github.com/dlclark/regexp2 v1.11.4 h1:rPYF9/LECdNymJufQKmri9gV604RvvABwgOA8un7yAo=
github.com/dlclark/regexp2 v1.11.4/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8=
github.com/dlclark/regexp2 v1.11.5 h1:Q/sSnsKerHeCkc/jSTNq1oCm7KiVgUMZRDUoRu0JQZQ=
github.com/dlclark/regexp2 v1.11.5/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8=
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY=
github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ=
@@ -21,12 +23,15 @@ github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APP
github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg=
github.com/rs/xid v1.6.0/go.mod h1:7XoLgs4eV+QndskICGsho+ADou8ySMSjJKDIan90Nz0=
github.com/rs/zerolog v1.31.0 h1:FcTR3NnLWW+NnTwwhFWiJSZr4ECLpqCm6QsEnyvbV4A=
github.com/rs/zerolog v1.31.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss=
github.com/rs/zerolog v1.32.0 h1:keLypqrlIjaFsbmJOBdB/qvyF8KEtCWHwobLp5l/mQ0=
github.com/rs/zerolog v1.32.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss=
github.com/rs/zerolog v1.33.0 h1:1cU2KZkvPxNyfgEmhHAz/1A9Bz+llsdYzklWFzgp0r8=
github.com/rs/zerolog v1.33.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss=
github.com/rs/zerolog v1.34.0 h1:k43nTLIwcTVQAncfCw4KZ2VY6ukYoZaBPNOE8txlOeY=
github.com/rs/zerolog v1.34.0/go.mod h1:bJsvje4Z08ROH4Nhs5iH600c3IkWhwp44iRc54W6wYQ=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.12.0 h1:CM0HF96J0hcLAwsHPJZjfdNzs0gftsLfgKt57wWHJ0o=

4686
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -19,7 +19,6 @@
"moment": "^2.29.4",
"vue": "^3.3.4",
"vue-github-button": "^3.0.3",
"vue-gtag": "^2.0.1",
"vue-loading-overlay": "^6.0.3",
"vue-router": "4.5.0"
},
@@ -32,7 +31,7 @@
"@vue/cli-plugin-eslint": "~5.0.0",
"@vue/cli-service": "^5.0.8",
"eslint": "^8.47.0",
"eslint-plugin-vue": "^9.17.0",
"eslint-plugin-vue": "^10.0.0",
"postcss-cli": "^11.0.0"
},
"eslintConfig": {

View File

@@ -10,7 +10,8 @@
rel="stylesheet"
href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200"
/>
<title>rfd.fyi - An overlay of hot deals</title>
<title>rfd-fyi - An overlay of hot deals</title>
<script defer src="https://umami.snake-cloud.ts.net/script.js" data-website-id="59ffe8be-509a-471e-8cd6-a63c5b35b7aa"></script>
</head>
<body>
<noscript>

View File

@@ -213,12 +213,12 @@ export default {
<a
href="/#/filter=costco"
onclick="setTimeout(location.reload.bind(location), 1)"
>https://rfd.fyi/#/filter=costco</a
>/#/filter=costco</a
>)</small
>
<div class="footer-right">
<github-button href="https://github.com/davegallant/rfd-fyi"
>Star</github-button
></github-button
>
</div>
</footer>

View File

@@ -1,6 +1,5 @@
import { createApp } from "vue";
import App from "./App.vue";
import VueGtag from "vue-gtag";
import { createRouter, createWebHashHistory } from "vue-router";
import "bootstrap/dist/css/bootstrap.min.css";
@@ -15,9 +14,7 @@ const router = createRouter({
routes,
});
const app = createApp(App).use(VueGtag, {
config: { id: "G-YF11ZH9SYD" },
});
const app = createApp(App);
app.use(router);
app.mount("#app");