Skip to content

Commit 6028adf

Browse files
committed
feat!: rename maevsi to vibetype
1 parent bf0c602 commit 6028adf

File tree

241 files changed

+583
-913
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

241 files changed

+583
-913
lines changed

.idea/modules.xml

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
File renamed without changes.

CONTRIBUTING.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ If your CI pipeline is failing because of incorrect test snapshots, `pnpm build`
5555

5656
### dargstack
5757

58-
Always do either frontend-only development using `pnpm dev` or fullstack development running [`maevsi/maevsi_stack`](https://github.com/maevsi/maevsi_stack).
58+
Always do either frontend-only development using `pnpm dev` or fullstack development running [`maevsi/stack`](https://github.com/maevsi/stack).
5959
You cannot run both at the same time as each development server writes different content to the `node_modules` directory.
6060

6161
When switching back from fullstack development to frontend-only development, `pnpm` will ask for permission to take back control of the dependency linking.

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -228,5 +228,5 @@ ENTRYPOINT ["docker-entrypoint.sh"]
228228
CMD ["pnpm", "run", "start:node"]
229229
HEALTHCHECK --interval=10s CMD wget -O /dev/null http://localhost:3000/api/healthcheck || exit 1
230230
EXPOSE 3000
231-
LABEL org.opencontainers.image.source="https://github.com/maevsi/maevsi"
231+
LABEL org.opencontainers.image.source="https://github.com/maevsi/vibetype"
232232
LABEL org.opencontainers.image.description="Find events, guests and friends 💙❤️💚"

README.md

+28-28
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
[![ci status][ci-image]][ci-url]
22
[![license status][license-image]][license-url]
33

4-
[ci-image]: https://img.shields.io/github/actions/workflow/status/maevsi/maevsi/ci.yml
5-
[ci-url]: https://github.com/maevsi/maevsi/actions/workflows/ci.yml
6-
[license-image]: https://app.fossa.com/api/projects/git%2Bgithub.com%2Fmaevsi%2Fmaevsi.svg?type=shield
7-
[license-url]: https://app.fossa.com/projects/git%2Bgithub.com%2Fmaevsi%2Fmaevsi?ref=badge_shield
4+
[ci-image]: https://img.shields.io/github/actions/workflow/status/maevsi/vibetype/ci.yml
5+
[ci-url]: https://github.com/maevsi/vibetype/actions/workflows/ci.yml
6+
[license-image]: https://app.fossa.com/api/projects/git%2Bgithub.com%2Fmaevsi%2Fvibetype.svg?type=shield
7+
[license-url]: https://app.fossa.com/projects/git%2Bgithub.com%2Fmaevsi%2Fvibetype?ref=badge_shield
88

9-
# maevsi
9+
# vibetype
1010

1111
Find events, guests and friends: [maev.si](https://maev.si/).
1212

13-
This project is deployed within the [maevsi_stack](https://github.com/maevsi/maevsi_stack/) in accordance with the [DargStack template](https://github.com/dargstack/dargstack_template/) to make deployment a breeze.
13+
This project is deployed within the [maevsi/stack](https://github.com/maevsi/stack/) in accordance with the [DargStack template](https://github.com/dargstack/dargstack_template/) to make deployment a breeze.
1414

15-
![Welcome](https://maev.si/__og-image__/image/og.png "maevsi")
15+
![Welcome](https://maev.si/__og-image__/image/og.png "vibetype")
1616

1717
## Table of Contents
1818
1. **[Contributing](#contributing)**
@@ -32,7 +32,7 @@ The setup for frontend development is easy! 💅
3232

3333
The setup for backend development is more complex as it consists of numerous services which are best set up containerized 🧑‍💻
3434

35-
You're encouraged to ask questions on [maevsi's Discord](https://discord.gg/E3hD3wEUQ4) if the setup could go smoother!
35+
You're encouraged to ask questions on [vibetype's Discord](https://discord.gg/E3hD3wEUQ4) if the setup could go smoother!
3636

3737
### Frontend only
3838

@@ -48,15 +48,15 @@ You're encouraged to ask questions on [maevsi's Discord](https://discord.gg/E3hD
4848

4949
#### Setup
5050

51-
1. create a directory named `maevsi` in a directory of your liking
51+
1. create a directory named `vibetype` in a directory of your liking
5252
1. download this repository into that newly created directory:
5353
```sh
54-
cd maevsi
55-
git clone https://github.com/maevsi/maevsi.git
54+
cd vibetype
55+
git clone https://github.com/maevsi/vibetype.git
5656
```
57-
1. switch into the `maevsi` subdirectory and setup Node:
57+
1. switch into the `vibetype` subdirectory and setup Node:
5858
```sh
59-
cd maevsi
59+
cd vibetype
6060
nvm install
6161
```
6262
1. then install all dependencies using [pnpm](https://pnpm.io/), which should include the **src** directory automatically:
@@ -70,7 +70,7 @@ You're encouraged to ask questions on [maevsi's Discord](https://discord.gg/E3hD
7070
cd src
7171
pnpm dev
7272
```
73-
1. you should now be able to access maevsi under https://localhost:3000/! 🎉
73+
1. you should now be able to access vibetype under https://localhost:3000/! 🎉
7474

7575
</details>
7676

@@ -90,30 +90,30 @@ You're encouraged to ask questions on [maevsi's Discord](https://discord.gg/E3hD
9090

9191
#### Setup
9292

93-
1. create a directory named `maevsi` in a directory of your liking
94-
1. download the project modules [maevsi](https://github.com/maevsi/maevsi), [maevsi_stack](https://github.com/maevsi/maevsi_stack) and [sqitch](https://github.com/maevsi/sqitch) into that newly created directory:
93+
1. create a directory named `vibetype` in a directory of your liking
94+
1. download the project modules [vibetype](https://github.com/maevsi/vibetype), [maevsi/stack](https://github.com/maevsi/stack) and [sqitch](https://github.com/maevsi/sqitch) into that newly created directory:
9595
```sh
96-
cd maevsi
97-
git clone https://github.com/maevsi/maevsi.git
98-
git clone https://github.com/maevsi/maevsi_stack.git
96+
cd vibetype
97+
git clone https://github.com/maevsi/vibetype.git
98+
git clone https://github.com/maevsi/stack.git
9999
git clone https://github.com/maevsi/sqitch.git
100100
```
101-
- **maevsi** contains the frontend and database migrations
102-
- **maevsi_stack** is the service configuration
101+
- **vibetype** contains the frontend and database migrations
102+
- **maevsi/stack** is the service configuration
103103
- **sqitch** is the database migration service
104-
1. switch into the `maevsi` subdirectory and setup Node:
104+
1. switch into the `vibetype` subdirectory and setup Node:
105105
```sh
106-
cd maevsi
106+
cd vibetype
107107
nvm install
108108
```
109109
1. then install all dependencies using [pnpm](https://pnpm.io/), including the **src** directory:
110110
```sh
111111
corepack enable
112112
pnpm install
113113
```
114-
1. configure maevsi's [DargStack](https://github.com/dargstack/dargstack) then take note of the following output:
114+
1. configure vibetype's [dargstack](https://github.com/dargstack/dargstack) then take note of the following output:
115115
```sh
116-
cd ../maevsi_stack/src/development
116+
cd ../stack/src/development
117117
cp stack.env.template stack.env
118118
pnpm store path
119119
```
@@ -134,12 +134,12 @@ You're encouraged to ask questions on [maevsi's Discord](https://discord.gg/E3hD
134134
cd ../../
135135
dargstack deploy
136136
```
137-
1. finally, create the Docker development images for `maevsi` and `sqitch` so that their services start successfully:
137+
1. finally, create the Docker development images for `vibetype` and `sqitch` so that their services start successfully:
138138
```sh
139-
dargstack build maevsi
139+
dargstack build vibetype
140140
dargstack build sqitch
141141
```
142-
1. you should now be able to access maevsi under https://localhost! 🎉
142+
1. you should now be able to access vibetype under https://localhost! 🎉
143143
144144
If there are issues, you can debug the services as described in the following "Container Management" section.
145145

SECURITY.md

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
# maevsi Disclosure Policy
1+
# vibetype Disclosure Policy
22

33
## 1 Introduction
44

5-
The security of maevsi is a top priority for our team. We believe in transparency and collaboration with the community to identify and address potential security vulnerabilities. This disclosure policy outlines the procedures for reporting security issues in maevsi and how we handle such reports.
5+
The security of vibetype is a top priority for our team. We believe in transparency and collaboration with the community to identify and address potential security vulnerabilities. This disclosure policy outlines the procedures for reporting security issues in vibetype and how we handle such reports.
66

77
## 2 Reporting a Security Issue
88

9-
If you discover a security vulnerability in maevsi, we encourage you to report it to us promptly. To report a security issue, please follow these steps:
9+
If you discover a security vulnerability in vibetype, we encourage you to report it to us promptly. To report a security issue, please follow these steps:
1010

1111

1212
Send an email to [email protected] with the subject line "Security Issue: [Brief Description]." Please provide a detailed description of the vulnerability, including the following:
@@ -18,7 +18,7 @@ Any additional information that can help us understand and address the issue.
1818

1919
## 3. Handling of Reports
2020

21-
Upon receiving a security report, the maevsi team will follow these steps:
21+
Upon receiving a security report, the vibetype team will follow these steps:
2222

2323
### 3.1 Acknowledgment
2424

@@ -38,7 +38,7 @@ We will keep you informed of our progress throughout the process and notify you
3838

3939
## 4 Disclosure
4040

41-
We believe in responsible disclosure to protect our users.
41+
We believe in responsible disclosure to protect our users.
4242

4343
If the issue is resolved, we will coordinate with you to establish a mutually agreed-upon release date for the fix.
4444
We will issue a security advisory and update the project's documentation once the fix is publicly available.
@@ -49,11 +49,11 @@ We highly value the contributions of the security community and will provide cre
4949

5050
## 6 Legal Protection
5151

52-
maevsi will not pursue legal action against security researchers who follow this disclosure policy and act in good faith. We appreciate your efforts to help us maintain the security of our project.
52+
vibetype will not pursue legal action against security researchers who follow this disclosure policy and act in good faith. We appreciate your efforts to help us maintain the security of our project.
5353

5454

5555
## 7 Changes to this Policy
5656

5757
This security disclosure policy may be updated or revised from time to time.
5858

59-
Last Updated: 2024-09-12
59+
Last Updated: 2024-09-12

SECURITY_CONTRIBUTION.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# Security Contributions
2-
The following security researchers followed our offical disclosure policy and helped us secure maevsi:
3-
- None yet, be the first!
2+
The following security researchers followed our offical disclosure policy and helped us secure vibetype:
3+
- None yet, be the first!

src/.config/nuxt.ts

+11-17
Original file line numberDiff line numberDiff line change
@@ -29,17 +29,8 @@ import { GET_CSP } from '../server/utils/constants'
2929
// setImmediate(() => {})
3030

3131
export default defineNuxtConfig({
32-
app: {
33-
head: {
34-
htmlAttrs: {
35-
lang: 'en', // fallback data to prevent invalid html at generation
36-
},
37-
title: SITE_NAME,
38-
titleTemplate: '%s', // fully set in `composables/useAppLayout.ts`
39-
},
40-
},
4132
compatibilityDate: '2024-04-03',
42-
css: ['~/assets/css/maevsi.css'],
33+
css: [`~/assets/css/app.css`],
4334
experimental: {
4435
typedPages: true,
4536
},
@@ -122,12 +113,12 @@ export default defineNuxtConfig({
122113
},
123114
'/api/auth-proxy': {
124115
security: {
125-
xssValidator: false, // TipTap's HTML is stored unescaped (is escaped when displayed) so api requests would trigger the xss protection on forward authentication (https://github.com/maevsi/maevsi/issues/1603)
116+
xssValidator: false, // TipTap's HTML is stored unescaped (is escaped when displayed) so api requests would trigger the xss protection on forward authentication (https://github.com/maevsi/vibetype/issues/1603)
126117
},
127118
},
128119
'/api/ical': {
129120
security: {
130-
xssValidator: false, // TipTap's HTML is stored unescaped (is escaped when displayed) so api requests would trigger the xss protection here (https://github.com/maevsi/maevsi/issues/1603)
121+
xssValidator: false, // TipTap's HTML is stored unescaped (is escaped when displayed) so api requests would trigger the xss protection here (https://github.com/maevsi/vibetype/issues/1603)
131122
},
132123
},
133124
'/event/view/**': {
@@ -155,7 +146,7 @@ export default defineNuxtConfig({
155146
i18n: {
156147
baseUrl: SITE_URL,
157148
},
158-
maevsi: {
149+
[SITE_NAME]: {
159150
email: {
160151
limit24h: '150',
161152
},
@@ -179,7 +170,7 @@ export default defineNuxtConfig({
179170
},
180171
},
181172
security: {
182-
isRateLimiterDisabled: true, // TODO: disable once api requests are optimized (https://github.com/maevsi/maevsi/issues/1654)
173+
isRateLimiterDisabled: true, // TODO: disable once api requests are optimized (https://github.com/maevsi/vibetype/issues/1654)
183174
},
184175
site: {
185176
url: SITE_URL,
@@ -223,6 +214,7 @@ export default defineNuxtConfig({
223214
'@uppy/core',
224215
'@uppy/tus',
225216
'@vuelidate/core',
217+
'@vueuse/core',
226218
'chart.js',
227219
'clipboardy',
228220
'clsx',
@@ -253,13 +245,15 @@ export default defineNuxtConfig({
253245
Components({
254246
dts: '../.nuxt/components-icons.d.ts',
255247
resolvers: [
256-
IconsResolver({ customCollections: ['maevsi', 'maevsi-colored'] }),
248+
IconsResolver({
249+
customCollections: [SITE_NAME, `${SITE_NAME}-colored`],
250+
}),
257251
],
258252
}),
259253
Icons({
260254
customCollections: {
261-
maevsi: iconCollectionOptimization({}),
262-
'maevsi-colored': iconCollectionOptimization({
255+
[SITE_NAME]: iconCollectionOptimization({}),
256+
[`${SITE_NAME}-colored`]: iconCollectionOptimization({
263257
isColored: true,
264258
}),
265259
},

src/app/app.config.ts

+1-5
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,12 @@
11
import type { useServerSeoMeta } from '@unhead/vue'
22

33
export default defineAppConfig({
4-
ui: {
5-
// primary: 'blue',
6-
gray: STYLE_DEFAULT_GRAY,
7-
},
84
vio: {
95
pages: undefined,
106
seoMeta: {
117
twitterSite: '@maev_si',
128
},
13-
themeColor: '#27272a',
9+
themeColor: THEME_COLOR,
1410
},
1511
})
1612

src/app/app.vue

+10-8
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@
1919
{{ t('browserUnsupportedLink') }}
2020
</AppLink>
2121
</template>
22+
<template #siteName>
23+
{{ t('globalSiteName') }}
24+
</template>
2225
</i18n-t>
2326
</CardStateInfo>
2427
</LazyClientOnly>
@@ -89,7 +92,7 @@ watch(
8992
showConfirmButton: true,
9093
text: t('pwaText'),
9194
timer: 10000,
92-
title: t('pwaTitle'),
95+
title: t('pwaTitle', { siteName: t('globalSiteName') }),
9396
})
9497
9598
if (result.isConfirmed) {
@@ -113,12 +116,11 @@ defineOgImageComponent(
113116
description: t('globalSeoSiteDescription'),
114117
},
115118
{
116-
alt: t('globalSeoOgImageAlt'),
119+
alt: t('globalSeoOgImageAlt', { siteName: t('globalSiteName') }),
117120
},
118121
)
119122
useAppLayout()
120123
await useAuth()
121-
useFavicons()
122124
usePolyfills()
123125
useSchemaOrg([
124126
defineWebSite({
@@ -128,7 +130,7 @@ useSchemaOrg([
128130
}),
129131
defineWebPage(),
130132
])
131-
useMaevsiGtag()
133+
useAppGtag()
132134
initialize()
133135
</script>
134136

@@ -158,15 +160,15 @@ initialize()
158160

159161
<i18n lang="yaml">
160162
de:
161-
browserUnsupported: Du benutzt einen Browser, in dem nicht alle Funktionen von maevsi unterstützt werden. {link}.
163+
browserUnsupported: Du benutzt einen Browser, in dem nicht alle Funktionen von {siteName} unterstützt werden. {link}.
162164
browserUnsupportedLink: Mehr erfahren
163165
pwaConfirmButtonText: App nutzen
164166
pwaText: Die Installation verbraucht fast keinen Speicherplatz und bietet eine schnelle Möglichkeit, zu dieser App zurückzukehren.
165-
pwaTitle: maevsi installieren
167+
pwaTitle: '{siteName} installieren'
166168
en:
167-
browserUnsupported: You're using a browser which does not support all features maevsi offers. {link}.
169+
browserUnsupported: You're using a browser which does not support all features {siteName} offers. {link}.
168170
browserUnsupportedLink: Learn more
169171
pwaConfirmButtonText: Get the app
170172
pwaText: Installing uses almost no storage and provides a quick way to return to this app.
171-
pwaTitle: Install maevsi
173+
pwaTitle: Install {siteName}
172174
</i18n>
File renamed without changes.
+1-3
Loading

src/app/assets/icons/bug.svg

+1-3
Loading

0 commit comments

Comments
 (0)