f5f0416346
refactor(backend): misc cleanup
2025-03-13 15:18:35 +01:00
5d452824cd
refactor(backend): use single shared HTTP client with backoff
2025-03-11 16:15:11 +01:00
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
373d97e70a
feat: make some limits configurable
2025-02-07 21:48:50 +01:00
d182b07482
feat: GET /api/v1/members/{id}, api v1 flags
2024-12-25 14:23:16 -05:00
7791c91960
feat(backend): initial /api/v1/users endpoint
2024-12-25 11:19:50 -05:00
36cb1d2043
feat: moderation API
2024-12-17 17:52:32 +01:00
11257ae069
chore: clean up backend code, fix most inspections
2024-12-14 16:51:58 +01:00
9d33093339
feat: forgot password/reset password
2024-12-14 16:32:08 +01:00
77c3047b1e
feat: misskey auth
2024-12-12 16:44:01 +01:00
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
d30ebacc72
chore: add license headers to all c# files
2024-12-09 21:11:46 +01:00
649988db25
refactor(backend): use explicit types instead of var by default
2024-12-08 15:07:25 +01:00
bc7fd6d804
feat(frontend): register/log in with email
2024-12-04 17:43:02 +01:00
57e1ec09c0
feat: link fediverse account to existing user
2024-12-04 01:49:03 +01:00
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
0c78cd25b0
fix(backend): use serilog theme that actually works with a light terminal
2024-11-24 16:01:40 +01:00
d87856bf2c
refactor: change ConvertBase64UriToImage from extension method to static method
2024-11-23 20:42:14 +01:00
201c56c3dd
feat: link discord account to existing account
2024-11-03 13:53:16 +01:00
c4cb08cdc1
feat: initial fediverse registration/login
2024-11-03 02:07:07 +01:00
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
0077a165b5
feat: add some fediverse authentication code
...
* create applications on instances
* generate authorize URLs
* exchange oauth code for token and user info (untested)
* recreate mastodon app on authentication failure
2024-10-06 15:34:31 +02:00
7f971e8549
chore: add csharpier to husky, format backend with csharpier
2024-10-02 00:28:07 +02:00
758ab9ec5b
feat(backend): delete flag endpoint
2024-09-26 23:03:50 +02:00
e20a7d3465
fix(backend): *actually* correctly hash images
2024-09-26 22:30:24 +02:00
14e6e35cb7
feat(backend): add create flag endpoint and job
2024-09-26 22:26:40 +02:00
ff2ba1fb1b
fix(backend): correctly hash images
2024-09-26 22:25:47 +02:00
f81ae97821
feat(backend): return unlisted status in partial member for authenticated users
2024-09-25 19:48:09 +02:00
412d720abc
feat: add .net user importer
2024-09-18 21:44:47 +02:00
ff22530f0a
feat(frontend): add discord callback page
...
this only handles existing accounts for now, still need to write an action function
2024-09-13 14:56:38 +02:00
498d79de4e
feat(frontend): internationalization
2024-09-10 20:33:22 +02:00
13a0cac663
feat(backend): email registration
2024-09-10 02:39:07 +02:00
c77ee660ca
refactor: more consistent field names, also in STYLE.md
2024-09-09 14:50:00 +02:00
344a0071e5
start (actual) email auth, add CancellationToken to most async methods
2024-09-09 14:37:59 +02:00
6c9d1c328b
fix: add class context to all loggers, format
2024-09-04 14:25:44 +02:00
fb324e7576
refactor: replace periodic tasks loop with background service
2024-09-04 01:46:39 +02:00
54ec469cd9
feat: add actual metrics using prometheus-net
2024-09-03 17:00:14 +02:00
0aadc5fb47
feat: replace Hangfire with Coravel
2024-09-03 16:29:51 +02:00
a069d0ff15
feat(backend): add more params to POST /users/@me/members
2024-07-14 21:25:23 +02:00
16f230b97d
feat(backend): start work on metrics
2024-07-13 17:23:52 +02:00
fa49030b06
feat: add deleted user columns in database
2024-07-13 03:09:07 +02:00
d6c9345dba
too many things to list (notably, user avatar update)
2024-07-08 19:03:04 +02:00
a7950671e1
feat: initial working discord authentication
2024-06-13 02:23:55 +02:00
6186eda092
feat(backend): add RequestDiscordTokenAsync method
2024-06-12 16:19:49 +02:00
25540f2de2
feat(backend): start authentication controllers
2024-06-12 03:47:20 +02:00
588afeec20
feat: add debug registration endpoint, fix snowflake serialization
2024-06-04 17:38:59 +02:00
852036a6f7
format, add more query extensions
2024-05-30 16:59:40 +02:00
f674d059fd
add UserRendererService and improve errors
2024-05-28 17:09:50 +02:00
6114f384a0
add a bunch of stuff copied from Foxchat.NET
2024-05-28 15:29:18 +02:00
f4c0a40259
init
2024-05-27 15:53:54 +02:00