You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+51-52Lines changed: 51 additions & 52 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,22 +18,11 @@ Features:
18
18
-**Appeals Management:** Handle user appeals efficiently through email notifications and a user-friendly web form.
19
19
-**Powerful Rules & Presets:** Create rules to automatically moderate content based on your unique business needs.
20
20
21
-
## Iffy Cloud vs Iffy Community
22
-
23
-
You may self-host Iffy Community for free, if your business has less than 1 million USD total revenue in the prior tax year, and less than 10 million USD GMV (Gross Merchandise Value). For more details, see the [Iffy Community License 1.0](LICENSE.md).
24
-
25
-
Here are the differences between the managed, hosted [Iffy Cloud](https://iffy.com) and the free Iffy Community version.
|**Infrastructure**| Easy setup. We manage everything. | You set up a server and dependent services. You are responsible for installation, maintenance, upgrades, uptime, security, and service costs. |
30
-
|**Rules/Presets**|**9 powerful presets**: Adult content, Spam, Harassment, Non-fiat currency, Weapon components, Government services, Gambling, IPTV, and Phishing | 2 basic presets: Adult content and Spam |
31
-
32
-
## Getting Started
21
+
## Getting started
33
22
34
23
### Dependencies
35
24
36
-
Install postgres with a username `postgres` and password `postgres`
25
+
Install postgres with a username `postgres` and password `postgres`:
37
26
38
27
```bash
39
28
brew install postgresql
@@ -64,21 +53,6 @@ Generate a `SECRET_KEY`:
64
53
openssl rand -base64 32
65
54
```
66
55
67
-
Optionally enable public sign-ups:
68
-
69
-
```
70
-
# .env.local
71
-
ENABLE_PUBLIC_SIGNUP=true
72
-
```
73
-
74
-
Optionally enable subscriptions & billing with Stripe:
75
-
76
-
```
77
-
# .env.local
78
-
STRIPE_API_KEY=sk_test_...
79
-
ENABLE_BILLING=true
80
-
```
81
-
82
56
<details>
83
57
<summary>Clerk</summary>
84
58
@@ -103,8 +77,42 @@ ENABLE_BILLING=true
103
77
104
78
</details>
105
79
80
+
### Running locally
81
+
82
+
Set up the database, run migrations, and add seed data:
83
+
84
+
```bash
85
+
createdb iffy_development
86
+
npm run dev:db:setup
87
+
```
88
+
89
+
Run the development server:
90
+
91
+
```bash
92
+
npm run dev
93
+
```
94
+
95
+
Open [http://localhost:3000](http://localhost:3000) to access the app.
96
+
97
+
### Optional features
98
+
99
+
To enable public sign-ups:
100
+
101
+
```
102
+
# .env.local
103
+
ENABLE_PUBLIC_SIGNUP=true
104
+
```
105
+
106
+
To enable subscriptions and billing with Stripe:
107
+
108
+
```
109
+
# .env.local
110
+
STRIPE_API_KEY=sk_test_...
111
+
ENABLE_BILLING=true
112
+
```
113
+
106
114
<details>
107
-
<summary>Resend (Optional, for email notifications)</summary>
115
+
<summary>Email notifications (optional, via Resend)</summary>
108
116
109
117
In order to send email with Iffy, you will additionally need a Resend API key.
110
118
@@ -116,7 +124,7 @@ In order to send email with Iffy, you will additionally need a Resend API key.
116
124
</details>
117
125
118
126
<details>
119
-
<summary>Resend Audience (Optional, for customer communication)</summary>
127
+
<summary>Email audiences (optional, via Resend)</summary>
120
128
121
129
1. Create an account at [resend.com](https://resend.com/).
122
130
1. Create a new audience (or use the default audience) at [Audiences](https://resend.com/audiences).
@@ -129,9 +137,8 @@ In order to send email with Iffy, you will additionally need a Resend API key.
129
137
1. Add the webhook secret to your `.env.local` file as `CLERK_WEBHOOK_SECRET`.
130
138
</details>
131
139
132
-
133
140
<details>
134
-
<summary>Shortest (Optional, for testing)</summary>
141
+
<summary>Natural language AI tests (optional, via Shortest)</summary>
135
142
136
143
In order to write and run natural language AI tests with [Shortest](https://shortest.com), you will additionally need an Anthropic API key and a Mailosaur API key.
137
144
@@ -147,26 +154,7 @@ In order to write and run natural language AI tests with [Shortest](https://shor
147
154
148
155
</details>
149
156
150
-
### Database
151
-
152
-
Set up the database, run migrations, and seed data:
153
-
154
-
```bash
155
-
createdb iffy_development
156
-
npm run dev:db:setup
157
-
```
158
-
159
-
### Development
160
-
161
-
Run the development server:
162
-
163
-
```bash
164
-
npm run dev
165
-
```
166
-
167
-
Open [http://localhost:3000](http://localhost:3000) to access the app.
168
-
169
-
### Jobs (Optional)
157
+
### Jobs
170
158
171
159
To run asynchronous jobs, you will need to set up a local Inngest server. In a separate terminal, run:
172
160
@@ -200,3 +188,14 @@ Run app (end-to-end) tests
200
188
npm run shortest
201
189
npm run shortest -- --no-cache # with arguments
202
190
```
191
+
192
+
## Iffy Cloud vs Iffy Community
193
+
194
+
You may self-host Iffy Community for free, if your business has less than 1 million USD total revenue in the prior tax year, and less than 10 million USD GMV (Gross Merchandise Value). For more details, see the [Iffy Community License 1.0](LICENSE.md).
195
+
196
+
Here are the differences between the managed, hosted [Iffy Cloud](https://iffy.com) and the free Iffy Community version.
|**Infrastructure**| Easy setup. We manage everything. | You set up a server and dependent services. You are responsible for installation, maintenance, upgrades, uptime, security, and service costs. |
201
+
|**Rules/Presets**|**9 powerful presets**: Adult content, Spam, Harassment, Non-fiat currency, Weapon components, Government services, Gambling, IPTV, and Phishing | 2 basic presets: Adult content and Spam |
0 commit comments