Commit Graph

333 Commits

Author SHA1 Message Date
ilidemi 971123a519 Add internet-os fishbowl (#63)
#33 progress: 10/10 🎉

Co-authored-by: Ilia Demianenko <ilia.demianenko@gmail.com>
Reviewed-on: #63
Co-authored-by: ilidemi <belk94@gmail.com>
Co-committed-by: ilidemi <belk94@gmail.com>
2022-07-07 02:43:51 +00:00
ilidemi 72c9fa45fc Add metaprogramming fishbowl (#61)
#33 progress: 9/10

Pulled a couple of conversations from the audience

Co-authored-by: Ilia Demianenko <ilia.demianenko@gmail.com>
Reviewed-on: #61
Co-authored-by: ilidemi <belk94@gmail.com>
Co-committed-by: ilidemi <belk94@gmail.com>
2022-06-29 19:29:35 +00:00
ilidemi 3a39e81b67 Add lisp jam fishbowl (#60)
#33 progress: 8/10

Patched in nakst's account and references

Co-authored-by: Ilia Demianenko <ilia.demianenko@gmail.com>
Reviewed-on: #60
Co-authored-by: ilidemi <belk94@gmail.com>
Co-committed-by: ilidemi <belk94@gmail.com>
2022-06-27 12:38:21 +00:00
Asaf Gartner 316aba12b6 Ugly jam feed. Needs CSS work. 2022-06-25 16:24:04 +03:00
bvisness e9d4300100 Rework requests and middleware (#57)
o boy

Resolves #10 (hopefully!)

Co-authored-by: Ben Visness <bvisness@gmail.com>
Reviewed-on: #57
2022-06-24 21:38:11 +00:00
ilidemi 32db9b1843 Add parallel programming fishbowl (#58)
#33 progress: 7/10

Oh boy, this one has a good amount of links
Also updated bumbo's discord id in skimmability fishbowl

Co-authored-by: Ilia Demianenko <ilia.demianenko@gmail.com>
Reviewed-on: #58
Co-authored-by: ilidemi <belk94@gmail.com>
Co-committed-by: ilidemi <belk94@gmail.com>
2022-06-24 21:31:31 +00:00
ilidemi ca555d8027 Add skimming fishbowl (#51)
#33 progress: 6/10

Co-authored-by: Ilia Demianenko <ilia.demianenko@gmail.com>
Reviewed-on: #51
Co-authored-by: ilidemi <belk94@gmail.com>
Co-committed-by: ilidemi <belk94@gmail.com>
2022-06-23 04:28:43 +00:00
ilidemi aa6ba1066f Add config fishbowl (#50)
#33 progress: 5/10, halfway through!

Also added/modified links from flexible-software fishbowl to the config one.

Co-authored-by: Ilia Demianenko <ilia.demianenko@gmail.com>
Reviewed-on: #50
Co-authored-by: ilidemi <belk94@gmail.com>
Co-committed-by: ilidemi <belk94@gmail.com>
2022-06-20 04:30:31 +00:00
Asaf Gartner fee5331c22 Merge branch 'master' of git.handmade.network:hmn/hmn into jam-2022 2022-06-20 01:37:29 +03:00
Asaf Gartner 7dbd64f62a Merge branch 'jam-2022' of git.handmade.network:hmn/hmn into jam-2022 2022-06-20 01:37:16 +03:00
Asaf Gartner 9d1d249ec0 Added jam/project association. 2022-06-20 01:26:33 +03:00
Ben Visness e871542725 Add jam banner on home page 2022-06-18 10:30:30 -05:00
Ben Visness f36df1f697 Add jam index for 2022
Start jam index for 2022

Tweak jam copy

Update OpenGraph content
2022-06-18 10:01:14 -05:00
ilidemi fe3b1d29db Add simplicity-performance fishbowl (#49)
#33 progress: 4/10

Replaced links to #fishbowl-audience comments with comments themselves

Co-authored-by: Ilia Demianenko <ilia.demianenko@gmail.com>
Reviewed-on: #49
Co-authored-by: ilidemi <belk94@gmail.com>
Co-committed-by: ilidemi <belk94@gmail.com>
2022-06-18 13:39:08 +00:00
Ben Visness 359354f2aa Start jam index for 2022 2022-06-17 17:30:18 -05:00
Asaf Gartner 141c279335 Merge branch 'master' of git.handmade.network:hmn/hmn 2022-06-16 00:34:48 +03:00
ilidemi 86bcde4d49 Add teaching-software fishbowl (#45)
#33 progress: 3/10

Significant changes:
Moved pre-intro discussion after intros, cleaned up what I saw as noise
Pointed bumbo to his current discord id - if a different one is linked to the website, lmk

Co-authored-by: Ilia Demianenko <ilia.demianenko@gmail.com>
Reviewed-on: #45
Co-authored-by: ilidemi <belk94@gmail.com>
Co-committed-by: ilidemi <belk94@gmail.com>
2022-06-15 19:39:41 +00:00
Asaf Gartner 870a073e22 Added proper verification for forum urls
Fixes issue #12
2022-06-14 22:52:50 +03:00
Asaf Gartner 86a7128f25 Only show blog content preview in blog index when there are few posts
Partially resolves issue #30
2022-06-14 20:15:16 +03:00
Asaf Gartner 2012328436 Use hmndata helpers for project timeline on project homepage
Resolves issue #37
2022-06-14 19:14:38 +03:00
Asaf Gartner 31f7bf5350 Treat fishbowl files like public files. Skip expensive middleware.
We don't really need to validate the project subdomain here.
Fetching the common data eats up a db connection, and we don't gain
anything from it.
2022-06-14 04:06:44 +03:00
ilidemi 58c09126a4 Add Flexible Software fishbowl (#43)
#33 progress: 2/10

Co-authored-by: Ilia Demianenko <ilia.demianenko@gmail.com>
Reviewed-on: #43
Co-authored-by: ilidemi <belk94@gmail.com>
Co-committed-by: ilidemi <belk94@gmail.com>
2022-06-13 13:49:22 +00:00
bvisness d1e63f745b Add Fishbowl archive (#41)
Refs #33

Co-authored-by: Ben Visness <bvisness@gmail.com>
Co-authored-by: ilidemi <belk94@gmail.com>
Reviewed-on: #41
2022-06-12 12:45:56 +00:00
Ben Visness 1cfb9e4033 Fix mailto on crash page 2022-06-01 20:49:19 -05:00
Asaf Gartner 9fcc2321ca Hopefully fixed desync with twitch 2022-05-30 18:49:30 +03:00
Ben Visness c1fa6cae13 Integrate Nick's local S3 server
Works like a charm!

Small tweak for clarity
2022-05-14 00:48:19 -05:00
Ben Visness 3aa16c6d12 Add owners to seeded projects 2022-05-11 23:39:43 -05:00
Ben Visness 3a93aa93e9 Seed users (and rework a lot of user access to use new helpers) 2022-05-07 13:58:00 -05:00
Ben Visness 1020039ea2 Fix up tests 2022-05-07 09:43:41 -05:00
Ben Visness 0e56f56372 Rename all the db tables 2022-05-07 08:11:05 -05:00
Ben Visness a147cfa325 Rework DB API
This takes advantage of generics, and generally clears up a lot of
inconsistencies and quality-of-life issues.

Start of db rework: clean up, start generics, improve tests

Write some nice aspirational package docs

Rework and document the db API

Tests still pass, at least...now for everything else

Update all callsites of db functions

Finish converting all callsites

Not too bad actually! Centralizing access into the helpers makes a big
difference.

wtf it works
2022-05-06 16:56:13 -05:00
Ben Visness 6004149417 Fix zero-items bug with getPageInfo 2022-04-30 21:18:21 -05:00
Ben Visness f7d92a63b4 Update opengraph description for the manifesto 2022-04-30 19:08:25 -05:00
Asaf Gartner 38e93d5208 Added support for unknown filetypes in snippets 2022-04-07 08:19:48 +03:00
Asaf Gartner 6063a7dd71 Automatically approve users who link their discord account 2022-04-07 07:28:04 +03:00
Asaf Gartner 70cd2ec72b Added logs 2022-03-27 19:41:21 +03:00
Asaf Gartner 11dd75ad03 Twitch monitoring 2022-03-22 20:07:43 +02:00
Asaf Gartner 5c29f3f814 Added projects to admin approval queue 2022-03-06 14:48:47 +02:00
Ben Visness 7a6f2a7d4b Remove the code of conduct, tweak the communication guidelines
The code of conduct has historically not been of much use, while the
communication guidelines are more tangible. The two are also just kind
of redundant.
2022-02-13 16:24:01 -06:00
Asaf Gartner 8e7c20fffa Removed old project logo url fields 2022-02-13 22:07:09 +02:00
Asaf Gartner 9faba4270c Fixed issue on project edit when one of the owners is unapproved 2022-02-13 02:36:12 +02:00
Asaf Gartner b2a2b49abe Added the search bar to the footer 2022-02-10 22:27:28 +02:00
Asaf Gartner 43651d98e8 Code review 2022-02-07 14:21:40 +02:00
Asaf Gartner 92d6a31aa9 Fixed tag removal issue. 2022-01-31 10:22:25 +02:00
Asaf Gartner ad888346ef Discord message handling reorganization. 2022-01-31 08:46:43 +02:00
Asaf Gartner f4f439489d Assets for user avatars 2021-12-29 16:38:23 +02:00
Asaf Gartner eb32b04437 Added project links to project edit page 2021-12-26 12:03:25 +02:00
Asaf Gartner 12eb172f98 Log out user after setting status to 'banned' 2021-12-21 06:07:55 +02:00
Ben Visness 6307589ee4 Merge remote-tracking branch 'origin/master' into beta 2021-12-14 20:54:23 -06:00
Asaf Gartner b5eb718615 Query automatically does ToSlice. Use QueryIterator if you need an
iterator.
2021-12-15 03:36:37 +02:00
Asaf Gartner c84b6842e2 Admin actions on user profile 2021-12-15 03:17:42 +02:00
Asaf Gartner 1c48aab863 Fixed admin queue 2021-12-13 18:58:26 +02:00
Ben Visness b3df1a306b I don't like the "complete" banner 2021-12-13 02:09:03 -06:00
Ben Visness 3b8b02a856 Watch for snippet updates on all messages
This captures stuff in jam-showcase and ryan's stuff in #projects
2021-12-13 01:40:54 -06:00
Ben Visness 6d609f1fae Sort blog index correctly 2021-12-11 16:18:58 -06:00
Ben Visness 415ce8db43 Rework project visibility 2021-12-11 13:08:10 -06:00
Ben Visness 4d63d02533 Always update snippet tags on every Discord edit 2021-12-08 23:00:44 -06:00
Ben Visness 5344e9d4bc Limit the number of owners per project 2021-12-08 22:23:20 -06:00
Ben Visness b88776af0c Cap the number of personal projects per user 2021-12-08 22:02:11 -06:00
Ben Visness 79c9738b96 Fix various bugs 2021-12-08 21:50:35 -06:00
Ben Visness 37fcbb205c Move data-fetching helpers to a separate package 2021-12-08 20:04:15 -06:00
Ben Visness 73824a027b Add tag management to projects
Also rearrange that ProjectAndLogos stuff because agh it was so weird
2021-12-07 21:37:52 -06:00
Ben Visness f5ed6ec896 Add live markdown preview to the description editor 2021-12-06 23:20:12 -06:00
Asaf Gartner cf46e16df5 Edit project 2021-12-04 16:55:45 +02:00
Asaf Gartner 950e84d53a Personal project creation 2021-12-02 12:53:36 +02:00
Asaf Gartner 03c82c9d1a New project form 2021-11-25 05:59:51 +02:00
Ben Visness 8f560de2b6 Sort personal projects by recency instead of randomly 2021-11-11 16:35:00 -08:00
Ben Visness 0184cd1625 Add admin utilities for adding projects 2021-11-11 15:59:05 -08:00
Ben Visness df2942e84b Show project snippets on project pages
we need better filter UI, but do we really, though
2021-11-11 12:00:36 -08:00
Ben Visness 0cc879df21 Add tags to snippets on timelines 2021-11-11 11:00:46 -08:00
Ben Visness c8373aae81 Fix link issue with forum redirects 2021-11-10 09:34:48 -08:00
Ben Visness a84ec79ee2 Disable forum/blog actions for projects that don't have them enabled
I implemented this for personal projects, but I think it was actually
affecting official projects too that didn't have forums or blogs
enabled.
2021-11-10 09:13:56 -08:00
Ben Visness ff2183087d Preserve path when redirecting between official/personal projects 2021-11-09 20:51:28 -08:00
Ben Visness dfbcfbeacc Use new UrlContext for project URLs
Wow that was a lot to change
2021-11-09 20:11:39 -08:00
Ben Visness 6ef391b2e8 Redirect to generated personal project slug 2021-11-09 11:23:36 -08:00
Ben Visness ff901e4fb8 Add route grouping stuff for projects (needs thorough testing) 2021-11-09 11:14:38 -08:00
Ben Visness 7486f9e57d I really have no idea where I left off 2021-11-08 13:16:54 -06:00
Ben Visness a4ad2c5f04 Update data model for personal projects
Also:
- Added a helper for fetching posts with appropriate visibility
- Added personal projects to the project index
2021-11-06 15:25:31 -05:00
Ben Visness 4e47c51fa1 Add back project nav 2021-10-27 21:55:42 -05:00
Ben Visness 5eff3c38b4 Tweak routing middleware, add socials to banner
Instead of doing project nav, which I am actively avoiding
2021-10-27 21:55:42 -05:00
Ben Visness d39e6beb0f First pass at welcome banner 2021-10-27 21:55:41 -05:00
Ben Visness 3324428f8b Tweak news appearance 2021-10-27 21:55:40 -05:00
Ben Visness f8d5f9fce5 Rework the home page 2021-10-27 21:55:40 -05:00
Ben Visness 09e6a15085 Rejigger timelines to avoid explicit types 2021-10-27 21:55:39 -05:00
Ben Visness 6176744462 Add a library placeholder 2021-10-27 21:55:39 -05:00
Ben Visness ccdbad8978 Rework the nav for projects 2.0 2021-10-27 21:55:38 -05:00
Ben Visness 251446d6e4 Do jam showcase stuff 2021-09-24 22:53:00 -05:00
Asaf Gartner 776c78913a Updated admin atom feed title 2021-09-24 03:39:59 +03:00
Asaf Gartner aa2e12496a Undid last commit and added auth challenge 2021-09-24 03:37:08 +03:00
Asaf Gartner ed85d11d96 Testing auth UNDO BEFORE DEPLOY 2021-09-24 03:29:47 +03:00
Asaf Gartner a3e7e2afc0 Rename ThreadUnread to just Unread 2021-09-24 03:15:29 +03:00
Asaf Gartner f8985e6ee3 User approval admin page and RSS 2021-09-24 03:13:40 +03:00
Ben Visness cad1c397c1 Fix paste issue in editor, tweak jam page 2021-09-23 16:13:12 -05:00
Asaf Gartner f5708d1ea8 Disable submission to perfCollector. 2021-09-23 23:03:28 +03:00
Asaf Gartner 89e58c9a24 Convert the feed to use the new thread and post functions. 2021-09-23 23:02:45 +03:00
Ben Visness 4b13f99df8 Add thread title editing 2021-09-23 01:09:18 -05:00
Ben Visness ec80952ad9 Automatically approve users for now 2021-09-22 23:57:14 -05:00
Ben Visness 986a42c1ac Switch to centralized helpers for fetching threads/posts
This includes the ability to "shadowban" new users who have not yet been
approved. We do not have UI for approving these users.

Migrate deserving users to new Approved status

Add post fetching helpers as well

The logic in the thread/post stuff is definitely getting redundant, but
I'm not sure I'm yet ready to try to abstract any of it away.

The next thing to do is probably to update blogs and other places that
fetch threads/posts, and delete the old helpers.

Move forums and blogs fully to new helpers

Use the helpers on the landing page too

that was easy!

Fix up some spots I missed

Check user status and use helpers on the profile page
2021-09-22 23:48:31 -05:00
Asaf Gartner 7063fd5604 Added basic usage tracking for posts. 2021-09-22 22:18:39 +03:00
Asaf Gartner dc56b1f5d0 First working version. No user limits or usage tracking. 2021-09-22 02:13:11 +03:00
Ben Visness 070ea5cc20 Redirect old blog URLs to new 2021-09-20 10:17:53 -05:00
Ben Visness b2a35c469a Update project last updated fields on new forum/blog posts 2021-09-08 22:44:46 -05:00
Ben Visness 0f9a57f62b Put a maximum length on post content 2021-09-08 22:22:47 -05:00
Ben Visness 17bf11b173 Punctuation is important. 2021-09-08 22:00:28 -05:00
Ben Visness d5d3341c81 Improve OpenGraph / favicons 2021-09-08 21:51:43 -05:00
Ben Visness fd7754a7b6 Add redirect for old wiki URLs 2021-09-08 19:43:24 -05:00
Ben Visness 36bb2ce2d5 Put timestamp in avatar filenames to avoid cache problems 2021-09-07 19:55:52 -05:00
Ben Visness f1e2e99663 Don't treat replies to the OP as replies 2021-09-06 16:40:00 -05:00
Ben Visness 6f7237f656 Log errors if ErrorResponse panics
We have to do this because otherwise the errors never actually end up in
the ResponseData.
2021-09-05 19:00:25 -05:00
Asaf Gartner e542ef27ec Write to TLRI when users view blog posts. 2021-09-05 23:16:35 +03:00
Asaf Gartner b0930dd4f2 Removed project submission button from project index. 2021-09-05 22:57:10 +03:00
Asaf Gartner c76ea45ca9 Replaced relogin rejection with a notice and proper redirect. 2021-09-05 22:50:15 +03:00
Asaf Gartner e74b18967e Added /atom/projects?all for inso 2021-09-05 22:43:34 +03:00
Ben Visness a288ae8124 Remove the sitemap from the footer 2021-09-01 21:54:51 -05:00
Asaf Gartner d78a2e8e82 Breadcrumbs 2021-09-01 21:25:09 +03:00
Ben Visness 1f39b166cb Make many improvements and fixes to the markdown experience 2021-09-01 01:15:13 -05:00
Ben Visness 5247afcfc6 Fix scheme issue with X-Forwarded-Proto 2021-08-30 18:39:24 -05:00
Ben Visness e5055a1237 Fix some small bugs 2021-08-29 19:15:48 -05:00
Ben Visness bc39b4c0b7 Clean up TODOs 2021-08-28 12:07:45 -05:00
Asaf Gartner 5fa0a3a7c2 Processed some TODOs 2021-08-28 16:32:27 +03:00
Asaf Gartner e23f5fbcf6 Fixed ip handling 2021-08-28 15:53:06 +03:00
Asaf Gartner cb5c3c403d Internal server error page 2021-08-28 15:21:40 +03:00
Ben Visness 73a20a9a93 Add jam page 2021-08-28 06:26:17 -05:00
Asaf Gartner 573fd8d2a2 Episode guide and trailing slashes in urls 2021-08-28 13:40:13 +03:00
Asaf Gartner b29ae69a25 Merge branch 'master' of gitssh.handmade.network:hmn/hmn 2021-08-28 10:29:35 +03:00
Ben Visness 67b86720a9 Add user edit form
Add most of the user settings backend

still need to do discord lol

Add the Discord settings

Add avatar uploads
2021-08-27 17:18:02 -05:00
Ben Visness 16ae2188d1 Add background features to the Discord bot 2021-08-26 22:59:12 -05:00
Ben Visness 4f01e1fdcf Add a title to the user profile page 2021-08-17 21:09:42 -05:00
Asaf Gartner 8a07e8bc3b Search with DDG 2021-08-17 23:09:24 +03:00
Asaf Gartner 20c05637d9 Added whenisit and default opengraph items 2021-08-17 22:48:44 +03:00
Asaf Gartner bd178e0168 Fixed timer 2021-08-17 21:48:54 +03:00
Asaf Gartner c913b58e4c Added security timer middleware 2021-08-17 09:08:33 +03:00
Asaf Gartner a32f71f862 Password reset and Notices 2021-08-17 08:18:51 +03:00
Ben Visness 4c84bd2860 Add Discord unlinking 2021-08-16 00:07:17 -05:00
Ben Visness d92bf9a9b8 Add Discord account linking 2021-08-15 23:40:56 -05:00
Ben Visness 38a1188be7 Add Discord integration
Clean up several TODOs

Implement the full disconnect / resume flow

Detect zombied connections and restart

Implement the random delay on reconnect

Implement message sending!!

(with a goofy feedback loop on the echo bot)

Fix the feedback loop in the echo bot

Clean up the Discord gateway code

Many things are methods now to reduce the amount of explicit plumbing.
Connection handling should be a little more robust, and we have an
actual error handling strategy now.

Allow sending multiple Discord messages at once

Delete irrelevant tests

uhh, start rate limiting

Add per-route rate limiting

Add global rate limit handling

Handle context cancellation in Discord REST code

Allow changing buckets per route

Add the showcase rejection bot

Add library bot
2021-08-15 20:21:04 -05:00
Asaf Gartner 9dc3bfaa5c Renaming some files 2021-08-08 23:09:12 +03:00
Asaf Gartner 660f65ba95 Registration flow and email 2021-08-08 23:05:52 +03:00
Ben Visness 038ee7e90e Add permission check to the New Post button 2021-08-02 22:27:59 -05:00
Ben Visness c3e067fa44 Add blog indexes 2021-08-02 20:52:46 -05:00
Ben Visness b9645a6315 Extract the project slug more betterly 2021-07-30 22:31:43 -05:00
Ben Visness 1f4dd335c5 Add all the rest of the blog post operations
Still need to add UI for the blog index, and fix some aesthetic issues:

- Wide posts can break the editor UI
- Blog comments don't show the fancy reply UI
- The post hash stuff on blog threads doesn't jump you to the correct
post

Probably other stuff, I dunno.
2021-07-30 18:08:42 -05:00
Ben Visness 9945ab061d Add blog post editing 2021-07-30 17:32:19 -05:00
Ben Visness 93318c378a FirstID and LastID are not nullable 2021-07-30 15:01:40 -05:00
Ben Visness b0f75675c8 Implement blog posts 2021-07-30 14:59:48 -05:00
Ben Visness 958aeb45e4 Add back the ability to mark everything on the site as unread 2021-07-29 23:48:30 -05:00
Ben Visness 8ecb4a7173 Rework the category/thread data model
Threads can stand alone now. Threads can be attached to resources
directly without requiring a category. In addition, a lot of wiki stuff
and library discussion stuff was deleted because we're not gonna port
it.
2021-07-29 22:49:24 -05:00
Ben Visness 15ff1de6fc Clean up forums.go
All the really highly redundant stuff was pulled into a helper type.
2021-07-23 15:35:18 -05:00
Ben Visness 9b9d467ce4 Add CLRI/TLRI handling 2021-07-23 14:00:37 -05:00
Asaf Gartner b41a556fcd Merge branch 'master' of gitssh.handmade.network:hmn/hmn 2021-07-23 06:22:57 +03:00