mirror of
https://github.com/davegallant/rfd-fyi.git
synced 2025-08-10 18:12:27 +00:00
Compare commits
21 Commits
renovate/e
...
7ba64952b4
Author | SHA1 | Date | |
---|---|---|---|
|
7ba64952b4 | ||
|
665edf0c80 | ||
|
ef7448f02f | ||
|
60dfad2c66 | ||
|
f60dd55178 | ||
|
e7a47adca5 | ||
|
d54b07172e | ||
f60e4cf1cf | |||
|
d4253ed8e2 | ||
|
a0ee6bb6c8 | ||
|
5f7e848670 | ||
|
f2c05bce92 | ||
|
0e34c00b99 | ||
|
c20f4fb32a | ||
|
052e2d92d9 | ||
|
b367ad0a46 | ||
|
16ef189fe4 | ||
|
89d3d70ef9 | ||
|
00e3c8ad5e | ||
|
6444cac6ee | ||
b15a4fa107 |
11
Caddyfile
11
Caddyfile
@@ -1,5 +1,8 @@
|
|||||||
rfd.fyi
|
rfd.davegallant.ca {
|
||||||
|
file_server
|
||||||
|
reverse_proxy /api/* backend:8080
|
||||||
|
}
|
||||||
|
|
||||||
file_server
|
rfd.fyi {
|
||||||
|
redir https://rfd.davegallant.ca{uri} 301
|
||||||
reverse_proxy /api/* backend:8080
|
}
|
||||||
|
@@ -10,7 +10,7 @@ COPY . .
|
|||||||
|
|
||||||
RUN npm run build
|
RUN npm run build
|
||||||
|
|
||||||
FROM caddy:2.9.1-alpine as runtime
|
FROM caddy:2.10.0-alpine as runtime
|
||||||
|
|
||||||
WORKDIR /my-site
|
WORKDIR /my-site
|
||||||
|
|
||||||
|
@@ -1,11 +1,9 @@
|
|||||||
# rfd.fyi
|
# rfd-fyi
|
||||||
|
|
||||||
This repository provides a simple, less-distracting overlay for hot deals posted on https://forums.redflagdeals.com.
|
This repository provides a simple, less-distracting overlay for hot deals posted on https://forums.redflagdeals.com.
|
||||||
|
|
||||||
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.
|
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
|
## Local Development
|
||||||
|
|
||||||
To get up and running locally: in one pane/tab, run:
|
To get up and running locally: in one pane/tab, run:
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
# syntax=docker/dockerfile:1.14
|
# syntax=docker/dockerfile:1.17
|
||||||
FROM cgr.dev/chainguard/go:latest as build
|
FROM cgr.dev/chainguard/go:latest as build
|
||||||
|
|
||||||
WORKDIR /src
|
WORKDIR /src
|
||||||
|
900
package-lock.json
generated
900
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -20,7 +20,7 @@
|
|||||||
"vue": "^3.3.4",
|
"vue": "^3.3.4",
|
||||||
"vue-github-button": "^3.0.3",
|
"vue-github-button": "^3.0.3",
|
||||||
"vue-loading-overlay": "^6.0.3",
|
"vue-loading-overlay": "^6.0.3",
|
||||||
"vue-router": "4.5.0"
|
"vue-router": "4.5.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/core": "^7.22.10",
|
"@babel/core": "^7.22.10",
|
||||||
|
@@ -10,7 +10,7 @@
|
|||||||
rel="stylesheet"
|
rel="stylesheet"
|
||||||
href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200"
|
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>
|
<script defer src="https://umami.snake-cloud.ts.net/script.js" data-website-id="59ffe8be-509a-471e-8cd6-a63c5b35b7aa"></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
29
src/App.vue
29
src/App.vue
@@ -2,7 +2,6 @@
|
|||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
import Loading from "vue-loading-overlay";
|
import Loading from "vue-loading-overlay";
|
||||||
import GithubButton from "vue-github-button";
|
|
||||||
import { install } from "@github/hotkey";
|
import { install } from "@github/hotkey";
|
||||||
|
|
||||||
import "vue-loading-overlay/dist/css/index.css";
|
import "vue-loading-overlay/dist/css/index.css";
|
||||||
@@ -118,10 +117,14 @@ export default {
|
|||||||
return v.replace(re, (matchedText) => `<mark>${matchedText}</mark>`);
|
return v.replace(re, (matchedText) => `<mark>${matchedText}</mark>`);
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
showBeforeTargetDate() {
|
||||||
|
const now = new Date();
|
||||||
|
const target = new Date('2025-08-20T00:00:00');
|
||||||
|
return now < target;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
Loading,
|
Loading,
|
||||||
GithubButton,
|
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
@@ -206,21 +209,9 @@ export default {
|
|||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<div v-if="!isMobile()">
|
<div v-if="showBeforeTargetDate">
|
||||||
<footer class="fixed-bottom">
|
<footer class="fixed-bottom">
|
||||||
<small
|
PSA: <a href="https://rfd.fyi">rfd.fyi</a> will not be renewed after 2025-08-20. Please use <a href="https://rfd.davegallant.ca">rfd.davegallant.ca</a>.
|
||||||
>Press '/' to begin filtering (i.e.
|
|
||||||
<a
|
|
||||||
href="/#/filter=costco"
|
|
||||||
onclick="setTimeout(location.reload.bind(location), 1)"
|
|
||||||
>https://rfd.fyi/#/filter=costco</a
|
|
||||||
>)</small
|
|
||||||
>
|
|
||||||
<div class="footer-right">
|
|
||||||
<github-button href="https://github.com/davegallant/rfd-fyi"
|
|
||||||
>Star</github-button
|
|
||||||
>
|
|
||||||
</div>
|
|
||||||
</footer>
|
</footer>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
@@ -234,4 +225,10 @@ export default {
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
color: #2c3e50;
|
color: #2c3e50;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.fixed-bottom {
|
||||||
|
background: #ffc;
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
Reference in New Issue
Block a user