Skip to content

Releases: pynickle/gitpulse

GitPulse v0.1.0

15 Jun 13:50
68e751a

Choose a tag to compare

GitPulse v0.1.0 Pre-release
Pre-release

GitPulse v0.1.0

v0.1.0 — Reactions, Markdown Polish & Developer Experience

🎯 Reactions

GitPulse now supports GitHub reactions on issues, pull requests, and discussions. React with emoji directly from the detail view — your reactions sync instantly with GitHub.

✨ Dashboard Enhancements

  • Pull Request merge checks now expand with a smooth animation, making CI status easier to scan at a glance.
  • Language switcher in the navbar aligns consistently with surrounding controls.
  • Navbar action buttons refined with cleaner hover states.

📝 Markdown Improvements

  • Mention autocomplete (@username) handling improved for more reliable suggestions.
  • Embedded media (images, videos) in markdown now respect your color mode — dark mode shows dark-source media, light mode shows light-source media.

🎨 Visual Polish

  • Favicon updated to rounded variant with optimized icon assets for sharper rendering across platforms.

🛠 Under the Hood

  • Server-side request validation centralized with Zod schemas for more consistent error handling.
  • Added issue templates and a contributing guide to lower the barrier for new contributors.
  • Pre-commit hooks migrated to prek checks for faster feedback.
  • @primer/css updated to v22.2.1.

🤝 New Contributors

📦 Stats

14 commits, 93 changed files, +4,353 / -908 lines across app, server, and shared layers.

GitPulse v0.0.6

13 Jun 18:28
8071a31

Choose a tag to compare

GitPulse v0.0.6 Pre-release
Pre-release

GitPulse v0.0.6

v0.0.6 — Stability, Settings Reliability & SEO Polish

🛠 Settings Reliability

Fixed edge cases where user settings could be saved under the wrong account state. The save queue is now reset cleanly when the logged-in user changes, preventing stale preference writes.

🌐 SEO & Sharing

  • Homepage title no longer duplicates as “GitPulse - GitPulse”.
  • Added unified site metadata, robots indexing rules, and theme-color meta tags for dark/light mode.
  • Upgraded Twitter card to summary_large_image for richer link previews.

🎨 Dashboard Polish

Error states in the dashboard now fill the main content area and scale fluidly with the available space, instead of snapping to a fixed mobile size.

🔧 Under the Hood

  • Tightened type safety across dashboard entities, detail payloads, and GitHub API calls.
  • Normalized Pull Request detail data contracts for more consistent rendering.
  • Removed unused repo detail page and settings redirect to keep the bundle lean.
  • Added prek pre-commit hooks with automatic formatting and BOM cleanup.

📦 Stats

66 commits, 141 changed files, +13,942 / -3,957 lines across app, server, shared, and infrastructure.

GitPulse v0.0.5

10 Jun 17:20
20bcf77

Choose a tag to compare

GitPulse v0.0.5 Pre-release
Pre-release

v0.0.5 — Browser Extension, Notification Enhancements & i18n Refactoring

🔒 GitPulse Browser Extension

New WXT-based companion extension for opening GitPulse directly from GitHub pages. Scoped browser access with HTTPS-only remote targets to prevent GitHub URL exposure through broad tab metadata. Includes automated release workflow for Chrome and Edge extension submissions. Firefox build support included.

🏷 Notification Enhancements

Labels now displayed with underline-style tags below notification titles, using each label's hex color. Author avatars shown for issue, PR, and discussion notifications with skeleton loading animation and fade transition. GraphQL query extended to fetch labels and author data in a single request, eliminating extra network overhead.

🧭 Navigation & Detail Views

Release detail navigation added to browse releases directly from the dashboard. Repo names in detail headers now clickable, linking to the repository page. PR review diff history collapses automatically after submission. Detail return controls simplified for more intuitive back-navigation.

🎨 UI Redesign & Polish

Issue, PR, and discussion detail headers redesigned with modern badge styling and improved clarity. Redundant "Pull Request" and "Discussion" badges removed. Markdown editors unified into a single FloatingMarkdownEditor component. GitHub icon replaced with non-deprecated version.

🔍 SEO & Meta Tags

Page titles and Open Graph meta tags added for better link previews. Dynamic titles applied to dashboard, issue, PR, and repo details. Issue/PR body extracted as OG description (first 160 chars).

🔧 i18n Refactoring

Shared detail namespaces separated from issueDetail — cross-pane overlay, timeline, and label keys moved to dedicated namespaces (detailOverlay, detailTimeline, detailLabels, detailActions). Stale and unreachable locale leaves removed. Issue composer draft state preserved when switching between replies.

🛠 Infrastructure & Dependencies

Nuxt updated to ^4.4.8. @nuxtjs/color-mode, oxfmt, and oxlint dependencies refreshed. Extension directory excluded from oxlint type-aware checks. Dashboard detail components reorganized under dashboard/detail for clearer ownership boundaries.

📦 Stats

33 commits, 81 changed files, +5,649 / -1,430 lines across extension, app, server, and shared layers.

GitPulse Extension v0.2.0

10 Jun 17:27
bb22b42

Choose a tag to compare

Pre-release

GitPulse Extension v0.2.0

Initial public release of GitPulse Extension.

GitPulse Extension is a WXT-based browser extension that adds a GitPulse button directly on GitHub pages, allowing you to open any GitHub URL in your GitPulse dashboard with one click.

This initial release establishes the core extension structure with content script injection on github.com, configurable GitPulse base URL through popup and options page, HTTPS-only remote target enforcement to prevent plaintext transport of private GitHub URLs, and support for both Chrome (MV3) and Firefox (MV2) builds. Includes automated release workflow for store submissions and contract tests for dashboard URL handoff.

GitPulse v0.0.4

08 Jun 16:07
073ef97

Choose a tag to compare

GitPulse v0.0.4 Pre-release
Pre-release

v0.0.4 — Discussion Workflows, Navigation Overhaul & Hydration Stability

🏗 GitHub Discussions Support

Full first-class discussion workflow — browse, read, and participate in repository discussions directly from the dashboard. Discussion detail view with header, comments, answer cards, and reply threading. Comment composer with markdown support. Discussion API endpoints for fetching comments and posting replies. Discussion notifications now integrated into the notification feed alongside issues and PRs.

🔢 Notification Number Display

Issue, PR, and discussion numbers now displayed in notification items for quick identification. Discussion notifications properly routed and excluded from state enrichment to prevent data mixing.

🛡 Hydration Stability Fixes

Three SSR hydration mismatches resolved — sidebar group collapse deferred until hydrated, relative time labels anchored during hydration, and initial list branch state kept hydration-stable. These fixes eliminate console warnings and ensure consistent server/client rendering.

🎨 Avatar & UI Polish

Transparent GitHub avatars now render legible in dark mode. Avatar rendering logic consolidated into a shared GitHubAvatar component, eliminating duplication across issue, PR, and timeline cards. Navigation button visibility logic improved in repo view. Font field editing in settings made less friction-prone.

🔧 Infrastructure & Refactoring

GitHub URL parsing extracted into reusable utilities and covered by comprehensive test suite. Custom search query fields consolidated. Duplicate BranchSelector component removed. Markdown link resolver uses centralized URL navigation. Comark child node recursion guarded with proper type check. Repository detail gracefully handles repos without language metadata.

⚡ Security & Auth

Personal mode restore no longer triggers false CSRF warnings. Bun regression tests separated from Nuxt source directory.

🌐 Internationalization

Discussion-related UI strings added for en and zh-cn locales.

📦 Stats

23 commits, 73 changed files, +5,024 / -568 lines across app, server, and shared layers — 14 new files added.

GitPulse v0.0.3

05 Jun 14:29
b04f509

Choose a tag to compare

GitPulse v0.0.3 Pre-release
Pre-release

v0.0.3 — Settings, File Browser, PR Review Threads & Reviewer Management

⚙️ User Settings System

Complete user settings infrastructure with server-side storage via Upstash Redis. Settings page with font picker modal for choosing from 20+ bundled fonts. Settings persisted across sessions with proper migration support. Font selection applies globally via CSS custom properties.

📁 Repository File Browser

Full repository file browsing experience with branch selection. Navigate repo contents directly within the dashboard — browse directories, view files, and navigate back/home. Branch-aware routing syncs file browsing state with navigation history. Branch selector component with search and default branch detection.

🧵 PR Review Thread Resolve/Unresolve

Resolve and unresolve review threads directly from the diff viewer and timeline. Visual toggle buttons with resolved (green) and unresolved (outline) states. API integration for thread state mutation with optimistic UI updates. Outdated thread tags displayed in timeline review cards. Parallel fetching of review comments and files for improved load performance.

👥 PR Reviewer Management

Request and remove PR reviewers from within the app. Reviewer picker component with search, avatar display, and role-based filtering. Request modal with confirmation flow. Remove reviewer functionality with proper permission checks.

⚡ Performance Optimizations

  • Virtual scrolling for PR diff rendering — handles large diffs without DOM bloat
  • Markdown startup cost reduced by lazy-loading Shiki grammars only when needed
  • Tab badge updates debounced to avoid reactive churn
  • GitHub rate-limit pressure reduced by sharing in-flight GET responses
  • Redundant identity fetches eliminated across search and PR review flows
  • Diff row tokenization cached to avoid repeated parsing

🌐 Internationalization

Review thread resolve/unresolve translations for en and zh-cn. PR reviewer feature labels and UI copy fully localized. Simplified landing page auth descriptions.

🎨 UI Enhancements

Collapsible group component for settings sections. Font picker modal with live preview. Review comment layout improved with resolve button inside comment card. Bulma code-size overridden for PR diff viewer to prevent layout issues.

🔧 Infrastructure

Server-side settings API (GET/PUT) for user preferences. Tab groups and custom tabs migrated to server-side storage. API cache control middleware for optimizing GitHub requests. Branch and contents API endpoints added for file browsing support.

📦 Stats

42 commits, 103 changed files, +13,409 / -1,440 lines across app, server, and shared layers — 23 new files added.

GitPulse v0.0.2

02 Jun 10:17
2247e93

Choose a tag to compare

GitPulse v0.0.2 Pre-release
Pre-release

v0.0.2 — Repository Detail, PR Review Timeline & Full i18n

🏗 Repository Detail Page

Complete repo browsing experience within the dashboard. Navigate into any repository to view its rendered README, license, about section, language stats with colored icons, and fork count. Star/unstar and watch/unwatch with real-time UI feedback. Subscription (watch) and star API endpoints integrated with persistent state.

🏗 PR Review Timeline Overhaul

PR reviews now render with full per-file diff expansion, inline comment anchoring with expanded context, and a two-panel review workspace. Active review context is surfaced directly in diffs. Dismissed review context and thread reply chronology are preserved. Comment line labels and card styling improved for single-line reviews.

🔧 Markdown Renderer Migrated to Comark

Replaced @nuxtjs/mdc with Comark, the in-house Components-in-Markdown renderer. Bundled code highlighting enabled, custom image override for baseURL normalization, and prose component typing simplified. GitHub autolink grammars separated from general link parsing.

🎨 Error Page

Custom Nuxt error page with status code-aware fallback. Error preview widget for testing variant states during development.

🛡 Security Hardening

Production-grade input validation across all API surfaces: route parameters, comment bodies, lock/unlock payloads, subscription bodies, label updates, notification subject states, pagination params, and thread IDs all explicitly validated with rejection on malformed input. Blank-target links isolated, unsafe comment positions rejected, embedded qualifier quotes escaped in search queries.

🌐 Internationalization

All user-facing strings across PR/Issue headers, timeline cards, review comments, commit cards, sidebar labels, action panels, detail overlays, loading titles, and timeline controls are now fully localized with fallback support.

🔧 Authentication & Session

Non-personal sessions now persist correctly. Personal mode startup errors and PAT validation errors properly typed. Token login body normalized. Logout CSRF-protected.

🎨 UI Polish

GitHub icon added to landing navbar and detail overlay toolbar. Badge image spacing and timeline tag vertical spacing improved. Consecutive markdown images properly spaced. Empty filters state has correct margin. Changes-requested review cards softened to neutral gray with red accents.

🔧 TypeScript Hardening

Widespread type safety improvements: typed catches across API layers, typed label payloads, typed notification reasons, typed reference subjects, typed handler contracts. Fetch error message parsing centralized. Unused emit contracts removed. Component-type noise reduced across the board.

📦 Stats

185 commits, 118 changed files, +5,829 / -1,791 lines across app, server, and shared layers — 23 new files added.

GitPulse v0.0.1

31 May 09:15
8db4601

Choose a tag to compare

GitPulse v0.0.1 Pre-release
Pre-release

GitPulse v0.0.1

Initial public release of GitPulse.

GitPulse is a Nuxt-based web app for browsing GitHub notifications, issues, pull requests, repositories, and related activity in one focused dashboard.

This first release establishes the core application structure, GitHub authentication flows, dashboard navigation, issue and pull request detail views, timeline rendering, markdown support, and repository activity browsing.