Commit graph

27 commits

Author SHA1 Message Date
sam
7759225428
refactor(backend): replace coravel with hangfire for background jobs
for *some reason*, coravel locks a persistent job queue behind a
paywall. this means that if the server ever crashes, all pending jobs
are lost. this is... not good, so we're switching to hangfire for that
instead.

coravel is still used for emails, though.

BREAKING CHANGE: Foxnouns.NET now requires Redis to work. the EFCore
storage for hangfire doesn't work well enough, unfortunately.
2025-03-04 17:03:39 +01:00
sam
7791c91960
feat(backend): initial /api/v1/users endpoint 2024-12-25 11:19:50 -05:00
sam
546e900204
feat(backend): report context, fix deleting reports 2024-12-18 21:26:35 +01:00
sam
36cb1d2043
feat: moderation API 2024-12-17 17:52:32 +01:00
sam
51e335f090
feat: use a FixedWindowRateLimiter keyed by IP to rate limit emails
we don't talk about the sent_emails table :)
2024-12-11 21:17:46 +01:00
sam
ff8d53814d
feat: rate limit emails to two per address per hour 2024-12-11 20:42:48 +01:00
sam
d30ebacc72
chore: add license headers to all c# files 2024-12-09 21:11:46 +01:00
sam
f8e6032449
chore(backend): add roslynator and fix diagnostics 2024-12-08 15:17:18 +01:00
sam
649988db25
refactor(backend): use explicit types instead of var by default 2024-12-08 15:07:25 +01:00
sam
903be2709c
feat(backend): initial data export support
obviously it's missing things that haven't been added yet
2024-12-02 18:06:19 +01:00
sam
4780be3019
fix(backend): add unique index to auth methods 2024-11-28 21:29:25 +01:00
sam
d982342ab8
refactor: pass DbContextOptions into context directly
turns out efcore doesn't like it when we create a new options instance
(which includes a new data source *and* a new logger factory)
every single time we create a context. this commit extracts
OnConfiguring into static methods which are called when the context is
added to the service collection and when it's manually created for
migrations and the importer.
2024-10-30 15:35:23 +01:00
sam
7f971e8549
chore: add csharpier to husky, format backend with csharpier 2024-10-02 00:28:07 +02:00
sam
8fe8755183
feat(backend): validate links, allow setting links in POST /users/@me/members 2024-09-27 15:29:33 +02:00
sam
a70078995b
feat(backend): add pride flag models 2024-09-26 20:15:04 +02:00
sam
b5f9ef9bd6
feat(backend): add short ID reroll endpoints 2024-09-26 16:38:43 +02:00
sam
df93f28273
feat(backend): add short IDs to models 2024-09-26 15:08:08 +02:00
sam
2323810b06
feat(backend): add option to disable postgres connection pooling 2024-09-10 18:52:13 +02:00
sam
3d22385689
feat: add rate limiter proxy 2024-09-10 16:53:43 +02:00
sam
fa3c1ccaa7
feat: add user settings endpoint 2024-09-05 22:17:10 +02:00
sam
ef221b2c45
feat: update custom preferences endpoint 2024-08-22 15:13:46 +02:00
sam
a069d0ff15
feat(backend): add more params to POST /users/@me/members 2024-07-14 21:25:23 +02:00
sam
fa49030b06
feat: add deleted user columns in database 2024-07-13 03:09:07 +02:00
sam
493a6e4d29
feat(backend): add skeleton discord auth controller 2024-06-10 16:25:49 +02:00
sam
588afeec20 feat: add debug registration endpoint, fix snowflake serialization 2024-06-04 17:38:59 +02:00
sam
6114f384a0
add a bunch of stuff copied from Foxchat.NET 2024-05-28 15:29:18 +02:00
sam
f4c0a40259
init 2024-05-27 15:53:54 +02:00