Extract Contributor Portal to standalone app#143
Merged
Conversation
Reorder the landing nav, rename the Timeline component entry to "Base timeline component," and add a visually distinct Contributor Portal link backed by a new .button-accent design-system variant. Open the portal page to anyone: drop the contributor/admin gate that swapped in CollaboratorsOnlyNotice, gate the write affordances (Submit Feedback, IssueCreatorModal, contribution list) on canWrite, and skip the RLS-restricted fetch when the visitor can't write. Rewrite the WelcomeHeader copy to be role-aware and explain who can do what without inviting visitors to become contributors.
The Contributor Portal used to live inside the Church History Timeline app with hard-coded ch-timeline scoping, which hid feedback submitted from the Bible Atlas and First Century Church Directory. Make it a standalone page that aggregates feedback across every app and lets submitters tag the section their feedback is about. - New apps/contributor-portal.html entry, with its own React shell that reuses GettingStartedPage in aggregate mode and shows a generic "Windhover · Contributor Portal" header. - Add a section picker to IssueCreatorModal, defaulting to the host app but always editable so contributors can re-tag. - Group the contribution list by section (General, CH Timeline, FCC, Bible Atlas) and badge each row with its section. - Wire entry points: landing-page link, side nav, header buttons on each app. Legacy #getting-started hash redirects to the standalone page. https://claude.ai/code/session_016esLPiFAgz8c6aBoLuA1rg
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.
Summary
Refactors the Contributor Portal from an embedded view within the Church History Timeline app into a standalone, site-wide application. This allows contributors to manage feedback across all Windhover projects from a single dedicated page.
Key Changes
New Standalone App: Created
ContributorPortalApp.jsxas a dedicated root component with its own entry point (main-contributor-portal.jsx) and HTML file (contributor-portal.html)Removed Embedded Portal: Removed the
'getting-started'view fromChurchHistorySupabaseApp.jsx, including the view state management, hash-based routing, and conditional rendering logicUpdated Navigation:
SiteNavPanel.jsxto include the new portal in the navigation menuEnhanced GettingStartedPage:
aggregateAcrossAppspropisSignedIn,isContributor,isAdmin) to support both authenticated and unauthenticated statesWelcomeHeaderto display context-appropriate messaging based on user role and sign-in statusMulti-App Support:
appSections.jswith canonical list of site sections (General, Church History Timeline, First Century Church Directory, Biblical History Atlas)ContributionListto group contributions by app section whengroupBySectionis enabledIssueCreatorModalto allow selecting which app section a contribution belongs toStyling: Added
.button-accentvariant for standout primary actions and styles for sectioned contribution groupsBuild Config: Updated
vite.config.jsto include the new contributor portal entry pointImplementation Details
#getting-startedin the Church History Timeline now redirect to the standalone portalaggregateAcrossAppsprophttps://claude.ai/code/session_016esLPiFAgz8c6aBoLuA1rg