Experience the Power of Notion inside RocketChat Workspace and Elevate Collaboration
Integrate Notion Via RC App
prioritizes teamwork by enhancing collaboration for workspace users. Imagine having the power of two essential platforms, RocketChat and Notion, united as one, eliminating the need to switch between two platforms. Teams can Seamlessly Connect, Effortlessly Manage various Notion Workspaces, Share documents, and Even View Documents all within RocketChat. The real magic lies in Preserving your Important message inside the Notion Page, Structured within the Notion Database, ensuring vital discussions, decisions, and insights are never lost again, fostering alignment and inclusivity as everyone stays on the same page, even if they're not actively chatting. Whether it's brainstorming sessions, meeting notes, or shared links, find them all in one organized place. Plus, Create Comments on the Notion Page, view the Notion Database, and interact with relevant information.Welcome to a new era of streamlined collaboration, Where RocketChat and Notion work together seamlessly to fuel your team's success.
- These Video is recording of Rocket.Chat's Google Summer of Code Project Demo Day 2023, Where Contributors like me Showcase Amazing Projects they have been working on under Coding Period.
Tap to View
-
OnInstallation Message from Marketplace: When users install the Notion App from the RocketChat Marketplace, they receive a welcome message that introduces the features and further using guide of the integration.
-
Helper Message: Users can access a helper message with usage instructions by typing
/notion help
. This message provides guidance on how to use various commands and features. -
Smooth Authorization with Notion: Users can seamlessly connect their Notion account to the RocketChat workspace using the
/notion connect
command. Similarly, they can disconnect using the/notion disconnect
command, ensuring privacy and security. -
Manage Multiple Notion Workspaces and Switch Between Them: Users can manage and switch between Notion workspaces using
/notion workspace
or/notion ws
within RocketChat. This allows teams with different projects to collaborate effectively by connecting the appropriate Notion workspace. -
Create a Page or Record: Users can create new Notion pages or records directly from RocketChat using the
/notion create
command. This streamlines the process of initiating new collaborative documents. -
Create Notion Database: Teams can create new Notion databases using the
/notion create db
command. This enables structured data storage and management within Notion for efficient collaboration. -
Sharing Notion Page: Users can easily share Notion pages with their teammates using the
/notion share
command. This ensures that relevant information is quickly accessible to the right people.
-
Comment On Page: Teams can add comments to Notion pages directly from RocketChat using the
/notion comment
command. This feature encourages discussions and annotations within the context of the shared documents. -
Viewing Shared Notion Page: Users can view shared Notion pages within RocketChat, even if they don't actively participate. This ensures that important information is readily available to everyone.
-
Preserve Message in Notion Page (Optional New Page Structured within a Database: Users can choose to preserve RocketChat messages within a Notion page, structuring it within a database or while creating new task. This feature ensures that valuable discussions, decisions, and insights are captured in the appropriate context for future reference.
-
View Notion Table and Update Database Entries: Teams can view Notion database tables and update entries using the
/notion view
command. This facilitates collaborative data management without leaving RocketChat.
Once the app is installed from the marketplace and enabled for use, users will automatically receive a helper notification in the direct room that provides simple and user-friendly instructions on how to use the integration.
OnInstallation.mp4
The /notion help
command serves as a valuable command for users who might require a Quick Refresher. This command ensures that users can easily retrieve essential information, providing a convenient way to use App.
HelperMessage.mp4
The smooth authorization process for accessing and manipulating Notion pages and databases within a specific workspace directly from Rocket.Chat involves OAuth2 Notion Authorization. user can connect to workspace using /notion connect
and When a user wishes to disconnect from a workspace, they can simply run the /notion disconnect
command.
- The implementation of this feature have been done using backward compatible approach and not using the Apps Engine framework's due to some limitations in Notion OAuth2 handling. Notably:
- Basic HTTP Authentication: Notion recommends using Basic HTTP Authentication during the access_token request. However, the Apps Engine OAuth2Client may not support this functionality at present.
- Credential Format: Notion advises providing credentials in the form of
Basic CLIENTID:CLIENTSECRET
in base64 format, which might not be fully supported by the Apps Engine OAuth2Client. - Extra Fields: Notion integration requires additional fields in persistence storage, demanding customization of the Apps Engine to accommodate these fields.
Authorization.mp4
The Manage and Switch Between Workspace
feature enables users to switch between previously connected workspaces without the need to fully disconnect from their current workspace. This smooth transition between different workspaces enhances productivity by eliminating interruptions in workflow and mitigates the risk of confusion and errors that may result from working in the wrong workspace.
ChangeBetweenWorkSpace.mp4
The ability to create Notion pages or records directly from RocketChat via integration offers users remarkable convenience. For example, imagine a project discussion taking place in a RocketChat channel. With this feature, a team member can instantly initiate a new Notion page to capture meeting notes, action items, and decisions within the same conversation flow. This streamlined process eliminates the need to switch between platforms, empowering users to seamlessly document and collaborate in real-time, thus enhancing efficiency and knowledge retention.
CreateDatabaseRecord.mp4
CreateSubPage.mp4
Enabling users to create Notion tables directly from RocketChat through integration provides a valuable tool for organized data management. For instance, consider a project manager coordinating tasks in a RocketChat workspace. With this feature, the manager can effortlessly generate a structured Notion table to track project milestones, deadlines, and responsible team members, all within the familiar chat environment. This seamless process enhances task tracking and collaboration, ensuring that vital project details are systematically recorded and easily accessible, thereby promoting efficiency and informed decision-making.
CreateDatabase.mp4
Sharing Notion pages directly from RocketChat via App offers users a streamlined approach to disseminate information and collaborate effectively. For instance, envision a team discussing a marketing campaign in a RocketChat channel. Using this feature, a team member can instantly share a relevant Notion page containing campaign details, strategies, and visuals without leaving the conversation. This seamless sharing enhances communication by providing context-rich information, minimizing the need for context-switching between platforms. As a result, teams can make informed decisions swiftly, boosting alignment and driving projects forward efficiently.
SharePage.mp4
The ability to comment on Notion pages directly from RocketChat offers users a powerful tool for collaborative discussions. For example, picture a design review discussion happening in a RocketChat channel. Utilizing this feature, team members can provide feedback, suggestions, and insights directly on a shared Notion page dedicated to the design. This seamless process keeps conversations and feedback contextualized within the project's documentation, fostering efficient communication and informed decision-making. As a result, teams can iterate and refine their work effectively, ensuring alignment and accelerating project progress.
CommentOnPage.mp4
Viewing shared Notion pages from RocketChat via integration empowers users with immediate access to critical information, bolstering collaboration and decision-making. For example, imagine a team member reviewing a Notion page shared in a RocketChat channel, outlining intricate project details. By effortlessly viewing this page within the same chat environment, the user gains a comprehensive understanding of the campaign's scope, goals, and strategies. This eliminates the need to navigate to a separate platform, ensuring focused discussions and enabling quicker consensus-building. Ultimately, this feature enriches engagement and accelerates project momentum by consolidating information within the conversation space.
SharePage.mp4
Preserving RocketChat messages within an Existing Notion page through integration offers users a powerful means of capturing discussions and decisions seamlessly. For instance, envision a team collaborating on a product roadmap in a RocketChat channel. By utilizing this feature, team members can ensure that their valuable insights, brainstorming, and decisions are directly integrated into the associated Notion page. This functionality fosters a continuous record of thought processes and aligns discussions with documented outcomes, promoting transparency and informed actions. As a result, users can easily trace the evolution of ideas, keeping everyone on the same page and promoting a culture of inclusivity and efficiency.
Preserving RocketChat messages within a new Notion page or while creating entries in a database through integration offers users a powerful way to capture and contextualize discussions. For instance, imagine a project team discussing feature enhancements in a RocketChat channel. With this feature, users can effortlessly generate a dedicated Notion page or database entry linked to the ongoing conversation. This ensures that vital insights, decisions, and references are recorded alongside the relevant discussion, enhancing accountability and knowledge retention. This functionality establishes a dynamic repository that aligns communication with documentation, enabling teams to refer back to discussions and fostering collaboration with clarity and efficiency.
PreserveInfo.mp4
Viewing Notion tables directly within RocketChat through integration offers users a valuable tool for data analysis and collaboration. For example, consider a sales team tracking leads and conversions in a Notion database. By accessing and viewing this table within a RocketChat channel, team members can quickly assess sales trends, monitor progress, and discuss strategies without leaving the chat environment. This streamlined approach enhances real-time decision-making and encourages collaborative insights, minimizing the need for platform-switching. Ultimately, this feature empowers teams to stay informed and aligned, fostering efficient teamwork and informed actions.
ViewTable.mp4
- Certainly, the ability to Update Notion tables directly from RocketChat remains an upcoming feature within the integration. This enhancement will allow users to make changes and modifications to Notion tables seamlessly after the initial creation. While this functionality falls under the category of extra features rather than deliverables, it promises to provide users with an extended capability to manage and edit data within the integrated workspace. This feature aligns with the integration's focus on streamlining collaboration and boosting productivity by maintaining consistent access to, and manipulation of, crucial information.
PR Link | Description | Status |
---|---|---|
PR #2 | [CHORE] Initialise Notion App | |
PR #3 | [CHORE] Add Bug & Feature Forms Including PR Template | |
PR #5 | [Feat] Notion Authorization with Rocket.Chat | |
PR #14 | [Feat] Create Notion Database From RocketChat For Properties Without Configuration | |
PR #15 | [Feat] Create Notion Database From RocketChat For Properties Includes Configuration | |
PR #17 | [Feat] Provide Helper Message on /notion help having Commands as Attachment | |
PR #18 | [Feat] Provide Helper Message OnInstallation of App | |
PR #19 | [Feat] Comment on Notion Page | |
PR #20 | [Feat] Create Notion Page From RocketChat | |
PR #21 | [Feat] Change Between Workspace | |
PR #22 | [Feat] Create Notion Record From RC | |
PR #24 | [Feat] Share Docs and Intiaitives From RC | |
PR #26 | [Feat] Preserve RocketChat Message in New and Existing Notion Page | |
PR #28 | [Feat] View Notion Table inside RC | |
PR #30 | [DOCS] updated readme to include setup and general info about app | |
PR #31 | [Feat] View Notion Page Inside RocketChat Channel |
Issue Link | Description | Status |
---|---|---|
ISSUE #1 | [CHORE] Add Template of Opening Feature Request and Bug Issues | |
ISSUE #4 | [Feat] Notion Authorization with Rocket.Chat | |
ISSUE #6 | [Feat] Create Notion Database From RocketChat | |
ISSUE #7 | [Feat] Provide Helper Message on /notion help | |
ISSUE #8 | [Feat] Provide Helper Message OnInstallation of App | |
ISSUE #9 | [Feat] Comment on Notion Page | |
ISSUE #11 | [Feat] Change Between Workspace | |
ISSUE #10 | [Feat] Create Notion Page and Record | |
ISSUE #16 | [Feat] Gitpodify App with Updates in ReadME | |
ISSUE #23 | [Feat] Share Docs and Intiaitives From RC | |
ISSUE #25 | [Feat] Preserve RocketChat Message in New and Existing Notion Page | |
ISSUE #27 | [Feat] View Notion Table inside RC | |
ISSUE #29 | [Feat] View Notion Page Inside RocketChat Channel |
I plan to continue enhancing the integration by focusing on two key features. Firstly, I'll be working on implementing the Update Table Entries
feature, which will empower users to modify and manage data within Notion tables directly from RocketChat. This aims to provide a comprehensive data manipulation capability, enhancing the integration's practicality. Additionally, I'll be involved in shifting the Notion Page Markdown conversion to a NPM module. This transition will streamline the process of converting content from Notion pages to markdown, ensuring efficiency and compatibility and I'm excited to contribute to its continued evolution beyond the GSoC period.
I would like to express my heartfelt gratitude to BΓ‘rbara Zanella and Samad Yar Khan, my exceptional mentors throughout this project journey. Their unwavering support and guidance have been instrumental in shaping my growth. With their insightful guidance, we held two productive meetings each week, a testament to their commitment. Their encouragement to step beyond conventional boundaries has truly been transformative, pushing me to explore innovative solutions. From enhancing user-centric aspects to intricate technical implementations, their mentorship covered every aspect. In the face of diverse challenges at every juncture, their expertise helped us conquer each obstacle with determination.
I Extend my sincere thanks to Sing Li and the community for their invaluable contributions. Their insights and alerts on project direction have been invaluable, enhancing the project's usability. The continuous feedback loop created by this collaborative effort has been pivotal in our project's evolution. Without this constant stream of input, our progress would not have been as remarkable. I am truly grateful for the guidance and support provided by both my mentors and the community, as they have been pivotal in making this journey an enriching and successful one.
I'm Nabhag, a final-year Computer Engineering student from India, driven by a deep passion for Engineering. Beyond my academics, I'm devoted to crafting Plugins and Integrations that seamlessly connect various products, resulting in substantial impacts. Iβm an active Contributor in the Rocket.Chat Apps Community, and I firmly believe in transparently sharing my learning journey and progress. This involvement has opened doors to exciting opportunities, allowing me to shape platform integrations and extensions. Every Hackathon fuels my passion for designing innovative plugins, while my broader focus extends to creating developer tools and products that enhance the overall developer experience. Embracing the world of open source empowers me to work on projects close to my heart. While my primary identity revolves around being an OpenSource Contributor, I've also had the honor of taking part in Google Summer of Code, which has added another layer of enrichment to my journey.
My journey in the world of technology has been quite a ride. It all began with me diving into C++ programming and exploring the intricacies of Data Structures and Algorithms during my degree course. Initially, programming felt like a foreign concept, but I gradually picked up the ropes. However, I soon felt a sense of monotony and decided to switch to Java when I couldn't find exciting projects within the realm of C++. As I delved into Java, I started creating small console applications, only to realize that I wasn't making much progress.
Then, a game-changer entered the scene: WeMakeDevs Community introduced me to the concept of Learning in Public and the intriguing challenge of 100DaysOfCode. This was my gateway to the world of Full Stack Development. Embracing this approach, I began sharing my daily learning experiences on Twitter. Thankfully, through the 100DaysOfCode Challenge, I connected with like-minded individuals who shared my passion.
As I continued, I found myself gravitating towards Backend Engineering. However, I realized that I was stuck in a cycle of endlessly learning without any concrete application and missing real users. Seeking a breakthrough, I embarked on an internship with a fintech startup. Here, I was responsible for crafting an Investing Monitoring Tool that offered real-time analytics for trading Crypto using a blend of WebSockets, Angular, and NestJS. This was a pivotal moment as it marked the first time I developed something truly useful for users.
As my journey progressed, I became intrigued by the inner workings of communication protocols and the world of open-source software. My curiosity led me to participate in HacktoberFest, where I started trying to contribute to various organizations. Eventually, I stumbled upon RocketChat Apps, which opened up a new dimension of integration. This was exciting and novel, and I immersed myself in the Apps ecosystem. It was a joyous achievement when my pull request was merged into the Rocket.Chat repository, becoming a part of the Rocket.Chat 6.0 Release.
Joining Rocket.Chat came with a learning curve. Unexpectedly, my open-source journey paved the way for Google Summer of Code (GSoC). While I hadn't initially planned for it, the contribution mindset propelled me forward. I felt drawn to GSoC's mission of introducing more people to open-source, which led me to craft a proposal for Integrate Notion via RC App, just days before the deadline. It was a whirlwind of activity, including Creating a Figma design within a week. Miraculously, my proposal was accepted, bringing an indescribable sense of joy.
Transitioning into a Google Summer of Code Student was enlightening. As my mentor rightly said, getting selected is one challenge, but making the project a success requires relentless effort. The coding period had its share of ups and downs. Early on, we developed features, but they lacked a user-centered approach. The turning point arrived with valuable feedback from the community. This feedback reshaped our project into a more user-centric one, even though the challenges escalated.
The journey has been nothing short of a rollercoaster. We tackled seemingly impossible features within tight deadlines, all while dealing with Notion's limitations. This experience has been amazing and has firmly rooted me in the world of open-source. Once you dive in, there's no looking back. This is a journey I'm truly passionate about. If you're interested in venturing into open-source, feel free to connect with me on any of my social media platforms mentioned below.
Student | Nabhag Motivaras |
---|---|
Organization | Rocket.Chat |
Project | Integrate Notion Via RC App |
GitHub | @Nabhag8848 |
Nabhag Motivaras | |
[email protected] | |
Rocket.Chat | nabhag.motivaras |
Project Github Repository | Apps.Notion |