‹ Reports
The Dispatch

OSS Report: novuhq/novu


Novu Project Sees Surge in Community Engagement with Increased Feature Requests and Critical Bug Reports

Novu, an open-source notification platform for developers, has experienced a notable increase in community engagement, as evidenced by a surge in feature requests and critical bug reports. The project aims to streamline multi-channel notifications across platforms like Email, SMS, and Chat.

The most significant developments include numerous requests for new integrations with SMS and chat providers, highlighting user demand for extensibility. However, critical issues such as the self-hosted signup process failure (#6410) and integration sidebar visibility problems (#6385) pose challenges that need immediate attention to maintain user satisfaction.

Recent Activity

Recent issues and pull requests indicate a strong focus on expanding integration capabilities and addressing user interface bugs. The clustering of feature requests around SMS and chat providers suggests a trajectory towards increased platform adaptability.

Development Team and Recent Activity

  1. David Söderberg (davidsoderberg)

    • Recent Commits: 76 commits with 20939 changes.
    • Activities: Implemented new hooks for workflow channel preferences, added preference modules, extensive testing.
  2. Richard Fontein (rifont)

    • Recent Commits: 32 commits with 31632 changes.
    • Activities: Refactoring, dependency updates, publishing releases, framework and API enhancements.
  3. Adam Chmara (ChmaraX)

    • Recent Commits: 24 commits with 2142 changes.
    • Activities: Bug fixes, feature enhancements, rate limiting features, logging improvements.
  4. Paweł Tymczuk (LetItRock)

    • Recent Commits: 24 commits with 5724 changes.
    • Activities: Addressed notifications and UI components issues, fixed remounting issues in inbox notifications.
  5. Biswajeet Das (BiswaViraj)

    • Recent Commits: 18 commits with 3798 changes.
    • Activities: Worked on inbox preferences and notification handling features.

Of Note

Quantified Reports

Quantify Issues



Recent GitHub Issues Activity

Timespan Opened Closed Comments Labeled Milestones
7 Days 4 1 4 0 1
30 Days 12 8 19 0 1
90 Days 43 15 72 0 1
1 Year 364 200 1377 34 6
All Time 1467 1188 - - -

Like all software activity quantification, these numbers are imperfect but sometimes useful. Comments, Labels, and Milestones refer to those issues opened in the timespan in question.

Quantify commits



Quantified Commit Activity Over 30 Days

Developer Avatar Branches PRs Commits Files Changes
Richard Fontein 2 26/26/0 32 452 31632
David Söderberg 5 8/4/2 76 331 20939
George Djabarov 2 6/5/0 7 56 9439
Paweł Tymczuk 2 11/10/0 24 128 5724
Biswajeet Das 2 14/13/1 18 92 3798
George Desipris 3 12/10/1 14 95 3575
Gali Ainouz Baum 4 6/4/2 10 49 3306
Adam Chmara 2 25/23/2 24 83 2142
Denis Kralj 3 9/7/1 9 30 746
Joel Anton 2 2/2/0 7 32 602
Dima Grossman 3 8/6/1 14 18 524
Sokratis Vidros 1 5/6/0 7 23 292
Justin Nemmers (justnems) 1 1/0/0 2 1 79
Pawan Jain 1 2/2/0 2 5 11
None (dependabot[bot]) 1 1/0/0 1 1 2
Lucky 1 0/0/0 1 1 1
Paul Werner (paulwer) 0 1/0/0 0 0 0
Naveen Madhan (twentyone24) 0 1/0/0 0 0 0
None (teawithfruit) 0 2/0/1 0 0 0
Ahron (Arunshaik2001) 0 1/0/0 0 0 0
None (renovate[bot]) 0 1/0/1 0 0 0
None (rahulwingify888) 0 1/0/1 0 0 0
None (github-actions[bot]) 0 46/24/21 0 0 0

PRs: created by that dev and opened/merged/closed-unmerged during the period

Detailed Reports

Report On: Fetch issues



Recent Activity Analysis

The Novu project has recently seen a surge in activity, with 279 open issues currently tracked on GitHub. Notably, several issues have been created or updated in the last few days, indicating ongoing engagement from the community. A recurring theme among these issues is the request for new features and integrations, particularly with various SMS and chat providers, as well as enhancements to existing functionalities.

Several issues highlight critical bugs or complications, such as problems with the signup process (#6410) and integration errors (#6385). The presence of multiple feature requests for similar functionalities, like support for various SMS providers, suggests a strong demand for extensibility and adaptability in the platform.

Issue Details

Most Recently Created Issues

  1. Issue #6442: Title

    • Created: 0 days ago
    • Priority: Triage
    • Status: Open
  2. Issue #6441: 🚀 Feature: Ntfy and Gotify open source push notification server support needed

    • Created: 0 days ago
    • Priority: Triage
    • Status: Open
  3. Issue #6426: ✨ Polishing: Allow users to adjust which channels show up in global preferences

    • Created: 2 days ago
    • Edited: 1 day ago
    • Priority: Triage
    • Status: Open
  4. Issue #6410: 🐛 Bug Report: Self Hosted signup process fails

    • Created: 6 days ago
    • Priority: Triage
    • Status: Open
  5. Issue #6385: 🐛 Bug Report: Integrations sidebar selected tab providers is not visible after clearing search a provider input

    • Created: 11 days ago
    • Edited: 1 day ago
    • Priority: Triage
    • Status: Open

Most Recently Updated Issues

  1. Issue #6410: 🐛 Bug Report: Self Hosted signup process fails

    • Updated: Recently; critical issue affecting user onboarding.
  2. Issue #6385: 🐛 Bug Report: Integrations sidebar selected tab providers is not visible after clearing search a provider input

    • Updated: Recently; impacts user experience in integrations.
  3. Issue #6426: ✨ Polishing: Allow users to adjust which channels show up in global preferences

    • Updated: Recently; reflects user interface improvements.

Analysis of Notable Anomalies

  • The issue regarding the self-hosted signup process (#6410) indicates a significant barrier to entry for new users, as it results in a critical error during registration.
  • The integration sidebar visibility issue (#6385) suggests potential usability concerns that could hinder user interaction with the platform.
  • Feature requests such as those for Ntfy and Gotify support (#6441) reflect a growing need for diverse notification options, particularly among privacy-conscious users.

The clustering of feature requests around SMS and chat provider integrations indicates a strong community interest in expanding Novu's capabilities to meet varying user needs. Additionally, the presence of multiple bugs related to user interface elements highlights areas where immediate attention is required to enhance overall user experience.

In summary, while Novu is actively engaging its community through feature requests and bug reports, addressing critical bugs and enhancing usability will be essential for maintaining momentum and user satisfaction.

Report On: Fetch pull requests



Report on Pull Requests

Overview

The dataset contains a comprehensive list of pull requests (PRs) from the Novu repository, including both open and closed PRs. The analysis focuses on the most recent 48 open PRs and highlights notable trends, issues, and contributions made by various developers.

Summary of Pull Requests

  1. PR #6440: fix(root): throw unauthorized on missing auth data
    Created by Denis Kralj, this PR addresses authentication issues by throwing an error when authorization data is missing. It includes updates to several use cases and is linked to a related enterprise PR.

  2. PR #6439: chore(root): Release 2024-09-04 08:05
    An automated release PR created by GitHub Actions that includes multiple commits for bug fixes and new features, indicating ongoing maintenance and updates to the Novu Cloud.

  3. PR #6438: feat(web): add workflow channel preferences hooks
    David Söderberg introduces hooks for managing workflow channel preferences, with suggestions from reviewers to improve code quality and maintainability.

  4. PR #6437: chore(root): update Readme.md
    Paul Werner updates the README file to reflect changes in branding from SendinBlue to Brevo, enhancing user clarity regarding supported services.

  5. PR #6436: fix(api,shared): added trigger route to extendedBodySizeRoutes...
    This PR by teawithfruit addresses issues with email attachment upload sizes and enhances type definitions for attachments.

  6. PR #6434: refactor(web): open docs for specific step types
    Dima Grossman refactors documentation rendering for better user experience while creating workflows.

  7. PR #6428: feat(framework,novui): controls validation
    Gali Ainouz Baum implements validation for controls in the dashboard, ensuring better user feedback during form submissions.

  8. PR #6419: feat(react): Add NovuProvider and useNovu hook (WIP)
    George Desipris introduces a new provider and hook for React applications, currently in draft status.

  9. PR #6398: chore(deps-dev): bump webpack from 5.78.0 to 5.94.0 in /apps/web
    An automated dependency update PR created by Dependabot that upgrades Webpack for improved performance and security.

  10. PR #6396: feat(api): add preferences entity and schema
    David Söderberg adds a new preferences entity to the API, enhancing functionality related to user preferences management.

  11. PR #6395: fix(js): show the new messages pill when there are more than x notifications
    Paweł Tymczuk improves the inbox notifications component for better user interaction based on notification counts.

  12. PR #6387: chore(application-generic): removed docker version & added healthchecks
    Naveen Madhan updates Docker configurations for improved reliability of services through health checks.

  13. PR #6386: feat(web): Novu Dashboard fix - After clearing the search...
    Ahron fixes a UI issue in the Novu Dashboard related to provider selection after clearing search inputs.

  14. PR #6314: feat(worker): add environment name to trigger event
    George Djabarov adds environment name handling in worker events, improving analytics capabilities.

  15. PR #6009: feat(web): vite poc
    Dima Grossman introduces a proof of concept for using Vite in the project, although it remains a work in progress.

  16. PR #5715: chore(deps): update jest packages
    An automated dependency update PR focusing on Jest packages for testing improvements.

  17. PR #5714: chore(deps): replace dependency cpx with cpx2 ^2.0.0
    Another automated dependency update aimed at replacing deprecated packages with newer alternatives.

  18. PR #5586: refactor(app-gen): cache locking
    George Djabarov begins refactoring cache locking mechanisms but indicates that further work is needed.

  19. PR #5538: chore(deps): update next to v14 [security]
    An automated security update PR that upgrades Next.js to address vulnerabilities.

  20. PR #5537: build(deps-dev): bump vite from 4.5.2 to 4.5.3
    Another automated dependency update focusing on Vite improvements.

21-48. Additional PRs cover various features, fixes, and enhancements across different components of the Novu platform, addressing issues such as provider integrations, UI improvements, API enhancements, and CI/CD optimizations.

Analysis of Pull Requests

The analysis of the pull requests reveals several significant themes and trends within the Novu project:

Active Development

The repository shows a high level of activity with numerous recent contributions focused on enhancing functionality across various components such as web interfaces, APIs, and integrations with third-party services like Twilio and SendGrid. The presence of multiple PRs related to feature additions (e.g., workflow channel preferences hooks in PR #6438) indicates an ongoing effort to expand capabilities based on user needs and feedback.

Dependency Management

There are multiple instances of automated dependency updates (e.g., PRs #6398, #5715), which highlight a proactive approach towards maintaining up-to-date libraries and frameworks within the project ecosystem. This is critical not only for performance improvements but also for addressing security vulnerabilities as seen in PRs related to Webpack and Next.js updates (#6399, #5538).

Community Engagement

The repository encourages community contributions as evidenced by numerous contributors submitting PRs addressing bugs or adding features (e.g., PRs from David Söderberg and others). However, some older PRs remain open or unresolved due to inactivity or conflicts (e.g., PR #3385), suggesting potential areas where community engagement could be improved through better communication or review processes.

Code Quality Concerns

Several comments within the PR reviews indicate ongoing discussions about code quality, naming conventions, and architectural decisions (e.g., suggestions regarding naming conventions in PR #6420). This reflects an active commitment among contributors to maintain high standards within the codebase while also adapting to evolving project requirements.

Feature Flags

The use of feature flags is prevalent in recent developments (e.g., PRs related to workflow preferences), allowing developers to introduce new functionalities without disrupting existing workflows or user experiences until they are fully tested and validated.

Stale Pull Requests

A notable number of older pull requests have been marked as stale or inactive (e.g., several from over 100 days ago). This could indicate a need for improved management practices or clearer guidelines on how long contributions should remain open before being reviewed or closed if they no longer align with project goals.

Conclusion

Overall, the Novu repository demonstrates robust activity with ongoing enhancements aimed at improving user experience through better integration options and streamlined workflows. However, attention should be given to managing stale pull requests effectively while continuing to foster community engagement through timely reviews and feedback mechanisms.

Report On: Fetch commits



Repo Commits Analysis

Development Team and Recent Activity

Team Members and Their Recent Activities

  1. Adam Chmara (ChmaraX)

    • Recent Commits: 24 commits with 2142 changes.
    • Activities: Focused on bug fixes and feature enhancements, including rate limiting features and improvements to logging. Collaborated with multiple team members on various PRs.
  2. Joel Anton (antonjoel82)

    • Recent Commits: 7 commits with 602 changes.
    • Activities: Worked on UI components, including scaffolding for workflow preferences and fixing styling issues. Engaged in collaborative efforts on several branches.
  3. Richard Fontein (rifont)

    • Recent Commits: 32 commits with 31632 changes.
    • Activities: Involved in a variety of tasks including refactoring, dependency updates, and publishing releases. Significant contributions to the framework and API enhancements.
  4. Paweł Tymczuk (LetItRock)

    • Recent Commits: 24 commits with 5724 changes.
    • Activities: Addressed issues related to notifications and UI components, including fixing remounting issues in the inbox notifications component.
  5. Pawan Jain (jainpawan21)

    • Recent Commits: 2 commits with 11 changes.
    • Activities: Focused on minor bug fixes related to message sorting.
  6. Sokratis Vidros (SokratisVidros)

    • Recent Commits: 7 commits with 292 changes.
    • Activities: Engaged in various chores and minor fixes across the repository.
  7. Denis Kralj (denis-kralj-novu)

    • Recent Commits: 9 commits with 746 changes.
    • Activities: Worked on deployment scripts and minor fixes related to URLs and workflows.
  8. Dima Grossman (scopsy)

    • Recent Commits: 14 commits with 524 changes.
    • Activities: Focused on improvements to onboarding processes and UI interactions.
  9. Gali Ainouz Baum (ainouzgali)

    • Recent Commits: 10 commits with 3306 changes.
    • Activities: Contributed to validation tests and UI components, particularly around workflow controls.
  10. Biswajeet Das (BiswaViraj)

    • Recent Commits: 18 commits with 3798 changes.
    • Activities: Worked on various features including inbox preferences and notification handling.
  11. David Söderberg (davidsoderberg)

    • Recent Commits: 76 commits with 20939 changes.
    • Activities: Major contributions include implementing new hooks for workflow channel preferences, adding preference modules, and extensive testing.
  12. George Desipris (desiprisg)

    • Recent Commits: 14 commits with 3575 changes.
    • Activities: Focused on UI components, particularly around notifications and localization improvements.
  13. George Djabarov (djabarovgeorge)

    • Recent Commits: 7 commits with 9439 changes.
    • Activities: Worked on integration features and improvements for the bridge application.

Patterns, Themes, and Conclusions

  • The development team is highly active, with significant contributions across various aspects of the project including bug fixes, feature enhancements, refactoring, and testing.
  • There is a strong emphasis on collaboration among team members, as evidenced by multiple co-authored commits and cross-branch activities.
  • The focus areas include improving user experience through UI enhancements, optimizing API functionalities, and ensuring robust notification handling across different channels.
  • The team appears to be in a phase of rapid iteration, as indicated by the high volume of recent commits and ongoing work across numerous branches.
  • Overall, the team demonstrates a commitment to maintaining high code quality while actively engaging in community-driven development practices.