File tree Expand file tree Collapse file tree 2 files changed +93
-0
lines changed
Expand file tree Collapse file tree 2 files changed +93
-0
lines changed Original file line number Diff line number Diff line change 265265 </a >
266266 </v-hover >
267267 </li >
268+ <li class =" mt-2" >
269+ <v-hover v-slot =" { hover }" >
270+ <nuxt-link
271+ class =" text--primary text-decoration-none"
272+ :class =" { 'text-decoration-underline': hover }"
273+ to =" /oss-friends"
274+ >
275+ OSS Friends
276+ <v-icon small >{{ mdiDomain }}</v-icon >
277+ </nuxt-link >
278+ </v-hover >
279+ </li >
268280 </ul >
269281 </v-col >
270282 </v-row >
@@ -285,6 +297,7 @@ import {
285297 mdiShieldStar ,
286298 mdiLightbulbOn50 ,
287299 mdiCreation ,
300+ mdiDomain ,
288301 mdiEyeOffOutline ,
289302 mdiPost ,
290303 mdiCreditCardOutline ,
@@ -308,6 +321,7 @@ export default Vue.extend({
308321 mdiCreditCardOutline ,
309322 mdiEmailOutline ,
310323 mdiPost ,
324+ mdiDomain ,
311325 mdiCircle ,
312326 mdiShieldStar ,
313327 mdiLightbulbOn50 ,
Original file line number Diff line number Diff line change 1+ <template >
2+ <v-container class =" mt-16" >
3+ <v-row >
4+ <v-col cols =" 10" offset =" 1" class =" mt-16" >
5+ <h1 class =" text-h2 mb-4 text-center" >Open Source Friends</h1 >
6+ <p class =" text-h5 text--secondary text-center" >
7+ Here are some of our favorites open-source projects.
8+ </p >
9+ <v-row class =" mb-8 mt-8" >
10+ <v-col v-if =" apps.length == 0" class =" text-center my-16" >
11+ <v-progress-circular :size =" 100" color =" primary" indeterminate />
12+ </v-col >
13+ <v-col v-for =" app in apps" :key =" app.href" cols =" 12" md =" 4" >
14+ <v-card >
15+ <v-card-text class =" mb-0 pb-0" >
16+ <h4 class =" text-h5 text--primary" >
17+ {{ app.name }}
18+ </h4 >
19+ <p class =" mt-2 app-description mb-0" >{{ app.description }}</p >
20+ </v-card-text >
21+ <v-card-actions >
22+ <v-btn text :href =" app.href" color =" primary" >
23+ Learn More
24+ </v-btn >
25+ </v-card-actions >
26+ </v-card >
27+ </v-col >
28+ </v-row >
29+ <div class =" px-16" >
30+ <v-divider />
31+ </div >
32+ <div class =" text-center mt-8 mb-4" >
33+ <back-button />
34+ </div >
35+ </v-col >
36+ </v-row >
37+ </v-container >
38+ </template >
39+
40+ <script lang="ts">
41+ import Vue from ' vue'
42+
43+ type AppData = {
44+ name: string
45+ description: string
46+ href: string
47+ }
48+
49+ export default Vue .extend ({
50+ name: ' OpenSourceFriendsIndex' ,
51+ layout: ' website' ,
52+ data : () => ({
53+ apps: [] as AppData [],
54+ }),
55+ async fetch() {
56+ const response = await fetch (
57+ ' https://corsproxy.io/?https%3A%2F%2Fformbricks.com%2Fapi%2Foss-friends' ,
58+ ).then ((res ) => res .json ())
59+ this .apps = response .data
60+ },
61+ head() {
62+ return {
63+ title: ' Open Source Friends - httpSMS' ,
64+ }
65+ },
66+ })
67+ </script >
68+
69+ <style lang="scss" scoped>
70+ .app-description {
71+ display : -webkit-box ;
72+ -webkit-line-clamp : 3 ;
73+ line-clamp : 3 ;
74+ -webkit-box-orient : vertical ;
75+ overflow : hidden ;
76+ text-overflow : ellipsis ;
77+ height : 4.5em ;
78+ }
79+ </style >
You can’t perform that action at this time.
0 commit comments