feat: new api route users/:id/projects#2000
Merged
3kh0 merged 4 commits intohackclub:mainfrom Apr 1, 2026
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Adds a new API endpoint to list a given user’s projects (including support for user_id=me), aligning Rails routing, controller/view implementation, and the OpenAPI spec.
Changes:
- Document
GET /users/{user_id}/projectsindocs/openapi.yml. - Add nested route
GET /api/v1/users/:user_id/projectspointing toApi::V1::UserProjectsController#index. - Implement controller + Jbuilder response for paginated project listings.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
docs/openapi.yml |
Adds OpenAPI documentation for the new user-projects listing endpoint. |
config/routes.rb |
Introduces nested users/:user_id/projects route to the new controller. |
app/controllers/api/v1/user_projects_controller.rb |
Implements the index action, including me resolution and pagination. |
app/views/api/v1/user_projects/index.jbuilder |
Defines JSON response shape for projects + pagination. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
3kh0
approved these changes
Apr 1, 2026
transcental
added a commit
that referenced
this pull request
Apr 7, 2026
* fix: add fulfiler to slack msg to user (#1997) * fix: migrate shop_items w/o downtime * fix: prevent duplicate column addition in shop_items migration * quantative fulfilment stats (#2010) * fix: clear cache button on superMegaDash not working (#2011) * feat (dash): added HCB dashboard (#2013) * feat (dash): added HCB dashboard * lint * chore(deps): bump aws-sdk-s3 from 1.217.1 to 1.218.0 (#2017) Bumps [aws-sdk-s3](https://github.com/aws/aws-sdk-ruby) from 1.217.1 to 1.218.0. - [Release notes](https://github.com/aws/aws-sdk-ruby/releases) - [Changelog](https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-sdk-s3/CHANGELOG.md) - [Commits](https://github.com/aws/aws-sdk-ruby/commits) --- updated-dependencies: - dependency-name: aws-sdk-s3 dependency-version: 1.218.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * super partial it up (#2019) * super partial it up * lint * chore(deps): bump ahoy_matey from 5.4.1 to 5.4.2 (#2018) Bumps [ahoy_matey](https://github.com/ankane/ahoy) from 5.4.1 to 5.4.2. - [Changelog](https://github.com/ankane/ahoy/blob/master/CHANGELOG.md) - [Commits](ankane/ahoy@v5.4.1...v5.4.2) --- updated-dependencies: - dependency-name: ahoy_matey dependency-version: 5.4.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Super mega dash refactor (#2020) * remove fulfillment disablement * concern it up * fix brakeman warning * feat: improved project requirements: reworded messages and added tooltips (#1854) the old version had the inverted sentence logic on the site, confusing readers about what is required and what may be wrong Co-authored-by: Echo <github@3kh0.net> * feat: new api route `users/:id/projects` (#2000) * api route: users/:id/projects * partial it up * move admin api over to its own home --------- Co-authored-by: Echo <github@3kh0.net> * fix up wonky d3 calls (#2022) * fix rescue fulfillment dash (#2023) * fix rescue * fix references * Make vote page responsive on mobile (#2024) * Make vote page slightly more responsive on mobile * Shop page suggestion image fix and small voting page fix * remove debug line * small fix * fix super mega double borders (#2025) * fix: correct numbers on super mega dash (#2028) * fix: correct numbers on super mega dash * fix: better colors * fix: only include pending and not the awaiting verificaiton * fix: default text for responses + stale cases, if len <= 0 * fix: lint * feat: a banner for a deadline countdown on the project page (#1994) * feat: a banner for deadline countdown * updated the banner to be simpler * linting * fix(project): restore previous subtitle for AI declaration (#2033) Universal AI declaration needs a well thought out plan and this alone caused issues last time * fix(ship): prevent posts with null postable_id when shipping (#2035) * feat(devlog): bump devlog body limit to 4000 characters on popular demand * fix(super-mega): exclude contractor payments from dollars per hour calc (#2039) * Revert "feat: a banner for a deadline countdown on the project page (#1994)" (#2040) This reverts commit a34c8ab. * chore(deps): bump rack from 3.2.5 to 3.2.6 (#2041) Bumps [rack](https://github.com/rack/rack) from 3.2.5 to 3.2.6. - [Release notes](https://github.com/rack/rack/releases) - [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md) - [Commits](rack/rack@v3.2.5...v3.2.6) --- updated-dependencies: - dependency-name: rack dependency-version: 3.2.6 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat(voting): implement blessing & curses (#2046) * feat(voting): implement blessing & curses * chore(migration): stastify ci/cd * feat(voting): papertrail vote_verdict * fix(project): remove DISTINCT from excluding_shadow_banned to resolve Postgres ORDER BY error (#2042) * Exclude shadow-banned projects from query * ez fix --------- Co-authored-by: Kartikey Chauhan <skartikey314@gmail.com> * chore(secrets): update subproject commit reference to d6f5615b * chore(secrets): update subproject commit reference to 6f2e1eb * feat(voting): add skip functionality for projects * chore(lint): run bin/lint + update secrets (#2049) * feat(super-mega): add most common shop suggestions to fulfillment dash (#2043) * feat(super-mega-dash): added qualitative statistics for the NPS using an AI summary (#2030) * feat: added NPS vibalytics * lint * fix copilot comment 1 and 2 * lint * fix copilot comment 3 * truncate redirect url * increase readability * feat(explore): added well-cooked filter for project gallery (#2048) * filter by cooked in gallery * remove new checkbox css * edit params * add to prev dropdown --------- Co-authored-by: Cyteon <129582290+cyteon@users.noreply.github.com> * feat(sidequests): add caffeinated side quest (#2051) * Create Caffeinated Sidequest * minor changes: fixed approved slack message * Updated from website to project * fix: trailing newline * fix: compressed image * removed old png * include db --------- Co-authored-by: Kartikey Chauhan <skartikey314@gmail.com> * style(super-mega): remove unnecessary gradients & ensure consistency in padding (#2054) * fix(css): streamline super-mega-dash UI * fixy wixy * lint * fix(shop-suggestions): fix broken sync job (#2056) * fix(voting): switch matchmaker threshold to payout_countable votes Payouts were being blocked due to a mismatch in vote counting logic. ShipEventPayoutCalculator uses `payout_countable`votes to determine payouts, while the matchmaker stops recommending users after 12 `legitimate` votes. This caused an issue where votes from cursed users (which are included in `legitimate` but excluded in `payout_countable`) could prevent projects from reaching the payout threshold. * chore(deps): bump lockbox from 2.1.0 to 2.2.0 (#2067) Bumps [lockbox](https://github.com/ankane/lockbox) from 2.1.0 to 2.2.0. - [Changelog](https://github.com/ankane/lockbox/blob/master/CHANGELOG.md) - [Commits](ankane/lockbox@v2.1.0...v2.2.0) --- updated-dependencies: - dependency-name: lockbox dependency-version: 2.2.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump blind_index from 2.7.0 to 2.8.0 (#2066) Bumps [blind_index](https://github.com/ankane/blind_index) from 2.7.0 to 2.8.0. - [Changelog](https://github.com/ankane/blind_index/blob/master/CHANGELOG.md) - [Commits](ankane/blind_index@v2.7.0...v2.8.0) --- updated-dependencies: - dependency-name: blind_index dependency-version: 2.8.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(voting): fix typo "bleesed" to "blessed" (#2059) * Fix typo in blessed Slack message header * Fix typo in blessed Slack message header * Fix typo in blessed message for payouts * Fix typo in vote verdict banner message * feat(super-dash): Alter Shipwrights section in SuperMegaDash (#2038) * Add rejection reasons plus make their day * lint * fix json escape * switch to `.to_json` * fix: project generator issues (#2062) * handle fallbacks * use the correct model name * feat(sidequest): add physics-lab sidequest (#2057) * added physics lab! * trail issue fix * trail fix 2 * Update show_physics_lab.html.erb * Add autocomplete attribute to gravity input * Remove host from development configuration * minor tweaks --------- Co-authored-by: Anirudh Sahu <renudilip19@gmail.com> * update: db annoations + migration * feat(super-mega): added category-wise pie chart for HCB transactions (#2069) * add pie chart * fix no more js in .erb * lint * i am a css god * update(shop_items): code changes to make select items refundable * fix: code syntax err --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Kartikey Chauhan <me@cskartikey.dev> Co-authored-by: Amber <amber@transcental.dev> Co-authored-by: Daamin Ashai <ashai.daamin@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Echo <github@3kh0.net> Co-authored-by: Johann Heuer <127251883+Vimthusiast@users.noreply.github.com> Co-authored-by: Cyteon <129582290+cyteon@users.noreply.github.com> Co-authored-by: Shreyas Deo <93237883+deoshreyas@users.noreply.github.com> Co-authored-by: Obay M. Rashad <102649548+ObayM@users.noreply.github.com> Co-authored-by: Kartikey Chauhan <skartikey314@gmail.com> Co-authored-by: Aryan Rao <aryanscode@gmail.com> Co-authored-by: Space <akaal@akaalroop.com> Co-authored-by: Saleh <nullskulls@proton.me> Co-authored-by: Carlson <dinosaur890123@gmail.com> Co-authored-by: Anirudh Sahu <renudilip19@gmail.com>
daaminashai
pushed a commit
to daaminashai/flavortown
that referenced
this pull request
Apr 10, 2026
* api route: users/:id/projects * partial it up * move admin api over to its own home --------- Co-authored-by: Echo <github@3kh0.net>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.