diff --git a/apps/docs/images/screens/analytics.png b/apps/docs/images/screens/analytics.png
new file mode 100644
index 00000000..dbd67e75
Binary files /dev/null and b/apps/docs/images/screens/analytics.png differ
diff --git a/apps/docs/images/screens/billing.png b/apps/docs/images/screens/billing.png
new file mode 100644
index 00000000..6df00c53
Binary files /dev/null and b/apps/docs/images/screens/billing.png differ
diff --git a/apps/docs/images/screens/settings.png b/apps/docs/images/screens/settings.png
new file mode 100644
index 00000000..6d256c83
Binary files /dev/null and b/apps/docs/images/screens/settings.png differ
diff --git a/apps/docs/mint.json b/apps/docs/mint.json
index c66ad9d0..676c8f1b 100644
--- a/apps/docs/mint.json
+++ b/apps/docs/mint.json
@@ -69,7 +69,6 @@
"howitworks",
"emails",
"github",
- "providers/how-to-add-provider",
{
"group": "Providers",
"pages": [
@@ -78,7 +77,8 @@
"providers/reddit/reddit",
"providers/articles"
]
- }
+ },
+ "providers/how-to-add-provider"
]
}
],
diff --git a/apps/docs/providers/how-to-add-provider.mdx b/apps/docs/providers/how-to-add-provider.mdx
index 912286d4..87ba7fde 100644
--- a/apps/docs/providers/how-to-add-provider.mdx
+++ b/apps/docs/providers/how-to-add-provider.mdx
@@ -42,7 +42,7 @@ And add the new DTO.
Head to `libraries/nestjs-libraries/src/dtos/posts/create.post.dto.ts`
look for the discriminator and add another line in the format of
-```typescript
+```typescript create.post.dto.ts
{ value: DTOClassName, name: 'providerName' },
```
@@ -50,9 +50,8 @@ look for the discriminator and add another line in the format of
And create a new provider file `providerName.provider.ts`
The content of the file should look like this:
-### For oAuth2 providers
-
-```typescript
+
+```typescript For oAuth2 providers
import {
AuthTokenDetails,
PostDetails,
@@ -84,11 +83,8 @@ export class XProvider implements SocialProvider {
}
}
```
-Take a look at the exising providers to see how to implement the methods.
-### For Token providers
-
-```typescript
+```typescript For Token providers
import { ArticleProvider } from '@gitroom/nestjs-libraries/integrations/article/article.integrations.interface';
export class DevToProvider implements ArticleProvider {
@@ -103,6 +99,9 @@ export class DevToProvider implements ArticleProvider {
}
}
```
+
+
+Take a look at the exising providers to see how to implement the methods.
### Custom functions
You might want to create custom functions for the providers for example: get available orgs, get available pages, etc.
@@ -121,7 +120,7 @@ Create a new folder with the providerName
Add a new file `providerName.provider.tsx`
The content of the file should look like this:
-```typescript
+```typescript providerName.provider.tsx
import { FC } from 'react';
import { withProvider } from '@gitroom/frontend/components/launches/providers/high.order.provider';
import { useSettings } from '@gitroom/frontend/components/launches/helpers/use.values';
@@ -168,6 +167,6 @@ You can look at the other integration to understand what data to put inside.
2. Open `apps/frontend/src/components/launches/providers/show.all.providers.tsx`
And add the new provider to the list.
-```typescript
+```typescript show.all.providers.tsx
{identifier: 'providerName', component: DefaultImportFromHighOrderProvider},
```
\ No newline at end of file
diff --git a/apps/docs/quickstart.mdx b/apps/docs/quickstart.mdx
index 3770b8fb..a27c64ef 100644
--- a/apps/docs/quickstart.mdx
+++ b/apps/docs/quickstart.mdx
@@ -37,17 +37,17 @@ docker run --name redis -p 6379:6379 -d redis
## Installation
-### Clone the repository
-
-```bash
+
+
+```bash Terminal
git clone https://github.com/gitroomhq/gitroom
```
+
-### Copy environment variables
-
+
Copy the `.env.example` file to `.env` and fill in the values
-```bash
+```bash .env
DATABASE_URL="postgres database URL"
REDIS_URL="redis database URL"
JWT_SECRET="random string for your JWT secret, make it long"
@@ -72,25 +72,27 @@ CLOUDFLARE_BUCKETNAME="Cloudflare R2 Bucket Name"
CLOUDFLARE_BUCKET_URL="Cloudflare R2 Backet URL"
NX_ADD_PLUGINS=false
```
+
-### Install the dependencies
+
-```bash
+```bash Terminal
npm install
```
+
-### Generate the prisma client and run the migrations
-
-```bash
+
+```bash Terminal
npm run prisma-db-push
```
+
-### Run the project
-
-```bash
+
+```bash Terminal
npm run dev
```
-
+
+
You have to follow all the tabs in the "Developers" menu to install Gitroom
diff --git a/apps/docs/use/analytics.mdx b/apps/docs/use/analytics.mdx
index 1c15b56b..af6cbcaa 100644
--- a/apps/docs/use/analytics.mdx
+++ b/apps/docs/use/analytics.mdx
@@ -2,4 +2,9 @@
title: Analytics
---
+
+**The analytics page allows you to:**
+- Monitor the amount of stars you get every day
+- Let you know when was the last GitHub trending feed refresh and when the next one will be
+- Cross-reference between the number of stars you got and the launch that caused it
\ No newline at end of file
diff --git a/apps/docs/use/billing.mdx b/apps/docs/use/billing.mdx
index 1a206e24..922db841 100644
--- a/apps/docs/use/billing.mdx
+++ b/apps/docs/use/billing.mdx
@@ -2,4 +2,8 @@
title: Billing
---
+
+**The settings page allows you to:**
+- Add GitHub repositories you would like to track in the analytics page
+- [PRO Tier / Self-hosted] Invite team members to your organization to collaborate with you
\ No newline at end of file
diff --git a/apps/docs/use/settings.mdx b/apps/docs/use/settings.mdx
index 2372f49e..ca6b74a0 100644
--- a/apps/docs/use/settings.mdx
+++ b/apps/docs/use/settings.mdx
@@ -2,3 +2,8 @@
title: Settings
---
+
+
+**The settings page allows you to:**
+- Add GitHub repositories you would like to track in the analytics page
+- [PRO Tier / Self-hosted] Invite team members to your organization to collaborate with you
\ No newline at end of file
diff --git a/libraries/nestjs-libraries/src/services/email.service.ts b/libraries/nestjs-libraries/src/services/email.service.ts
index 3904a917..be586c7c 100644
--- a/libraries/nestjs-libraries/src/services/email.service.ts
+++ b/libraries/nestjs-libraries/src/services/email.service.ts
@@ -1,11 +1,15 @@
import { Injectable } from '@nestjs/common';
import { Resend } from 'resend';
-const resend = new Resend(process.env.RESEND_API_KEY);
+const resend = new Resend(process.env.RESEND_API_KEY || 're_132');
@Injectable()
export class EmailService {
async sendEmail(to: string, subject: string, html: string) {
+ if (!process.env.RESEND_API_KEY) {
+ console.log('No Resend API Key found, skipping email sending');
+ return;
+ }
await resend.emails.send({
from: 'Gitroom ',
to,
diff --git a/libraries/react-shared-libraries/tsconfig.json b/libraries/react-shared-libraries/tsconfig.json
index 8b20abce..ef0c1df9 100644
--- a/libraries/react-shared-libraries/tsconfig.json
+++ b/libraries/react-shared-libraries/tsconfig.json
@@ -1,7 +1,6 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
- "module": "commonjs",
"forceConsistentCasingInFileNames": true,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
diff --git a/libraries/react-shared-libraries/tsconfig.lib.json b/libraries/react-shared-libraries/tsconfig.lib.json
index faa09cc1..6e7f31d7 100644
--- a/libraries/react-shared-libraries/tsconfig.lib.json
+++ b/libraries/react-shared-libraries/tsconfig.lib.json
@@ -3,6 +3,7 @@
"compilerOptions": {
"outDir": "../../dist/out-tsc",
"declaration": true,
+ "esModuleInterop": true,
"types": ["node"]
},
"include": ["src/**/*.ts"],