Skip to content

Instantly share code, notes, and snippets.

@wilmoore
Last active February 25, 2024 02:29
Show Gist options
  • Select an option

  • Save wilmoore/119135613235edea709bc74a721de311 to your computer and use it in GitHub Desktop.

Select an option

Save wilmoore/119135613235edea709bc74a721de311 to your computer and use it in GitHub Desktop.
Income Sources :: The Extension Development Green-Book

Income Sources :: The Extension Development Green-Book

⪼ Made with 💜 by Polyglot.

research

Extendable Software

Extendable software platforms allow users and developers to create custom functionalities, tools, and integrations, enhancing the core capabilities of the software to meet specific needs.

Here's an overview of how extensibility works in the mentioned platforms:

Software Domain Description Documentation Link
WordPress Web Development Customizable CMS with themes and plugins. WordPress Docs
Figma Design Collaborative design tool with plugins. Figma Plugin Docs
Chrome Extensions Web Browsing Web browser with user-created extensions. Chrome Developers
ChatGPT Plugins AI & Chatbots AI chatbot with external service plugins. OpenAI Docs
Visual Studio Code Software Development Code editor with extensive extension marketplace. VS Code Docs
JetBrains IDEs Software Development IDEs with plugins for languages, tools, and productivity. JetBrains Plugin Docs
Sublime Text Text Editing Text editor with package ecosystem for customization. Sublime Text Docs
Slack Communication Messaging app with third-party service integrations and bots. Slack API Docs
Zapier Automation Automation tool connecting different web apps. Zapier Docs
Jupyter Notebooks Data Science Interactive computational environment with extensions. Jupyter Docs
Trello Project Management List-making application with Power-Ups for extra features. Trello Docs
Notion Note-taking & Collaboration Workspace tool with integration and automation via API. Notion API Docs
Discord Communication & Gaming Platform for community and gaming with bots and integrations. Discord Developer Docs

WordPress

WordPress is a popular content management system (CMS) that allows for extensive customization through themes and plugins. Plugins in WordPress are packages of code that extend the functionality of a WordPress website, allowing for everything from SEO optimization and social media integration to complex e-commerce solutions. The platform has a vast repository of plugins, both free and premium, catering to virtually any website requirement.

Figma

Figma is a collaborative interface design tool that supports extensibility through plugins. These plugins can automate tasks, import resources, generate code, and more, significantly enhancing the design workflow. Developers can build custom plugins using Figma's API to tailor the software to specific design processes and needs, and users can browse and install plugins directly from within Figma.

Chrome Extensions

Chrome Extensions allow developers to build custom features and functionality into Google's Chrome web browser. Extensions can modify web content, add browser UI elements, manage tabs and windows, and much more. They're built using web technologies like HTML, CSS, and JavaScript, and can be published to the Chrome Web Store for distribution to Chrome users worldwide.

ChatGPT Plugins

ChatGPT plugins extend the capabilities of OpenAI's ChatGPT, allowing it to interact with external services, APIs, and custom data sources. Plugins can enable ChatGPT to perform a wide range of tasks, from fetching real-time data and providing personalized recommendations to executing specific actions in third-party systems. OpenAI offers a framework for building and integrating these plugins, opening up possibilities for highly interactive and dynamic AI-driven applications.

Each of these platforms has its own ecosystem and tools for development, offering extensive documentation and community support to help developers create and distribute their extensions or plugins. The extensibility of these platforms significantly contributes to their popularity and versatility, catering to a wide array of use cases and user needs.

Visual Studio Code (VS Code)

VS Code is a highly extensible code editor developed by Microsoft. It supports a wide range of programming languages and comes with a vast marketplace of extensions that provide additional languages, debuggers, tools for code linting and formatting, themes, and more. These extensions make VS Code adaptable to almost any development workflow.

JetBrains IDEs (e.g., IntelliJ IDEA, PyCharm)

JetBrains' suite of integrated development environments (IDEs) supports extensibility through plugins. These plugins can enhance the IDEs with new languages, frameworks, development tools, and productivity features. The JetBrains marketplace offers a wide variety of plugins for different development needs.

Sublime Text

Sublime Text is a popular text editor known for its speed and interface. Its extensibility comes from a package ecosystem that allows users to install plugins for language syntaxes, themes, productivity tools, and more, making it highly customizable for developers' needs.

Slack

Slack is a messaging app for teams that supports integration with a wide variety of third-party services and custom bots. These integrations can automate tasks, send notifications from external systems like GitHub or Jira, and streamline workflows directly within the Slack interface.

Discord

Discord supports third-party development mainly through bots, which can enhance servers with a variety of functionalities:

Bots: Discord bots can perform a range of actions, such as moderating conversations, providing entertainment, managing roles and permissions, and integrating with external APIs to bring data or perform actions within Discord servers.

Rich Presence: This feature allows developers to integrate their games or applications directly with Discord to show detailed status information about a user's activity within those applications, enhancing social features.

Integrations: Like Slack, Discord also supports various integrations with other services, enabling users to connect their Discord experience with other platforms like Twitch, Spotify, and more.

Developers can use Discord's APIs to create and manage bots and integrations, with comprehensive documentation available to guide through the development process.

Documentation: Discord Developer Documentation

Both platforms are highly extensible and encourage third-party development to enrich user experiences and provide additional functionalities tailored to the needs of their communities.

Zapier

Zapier is an online automation tool that connects your favorite apps, such as Gmail, Slack, Mailchimp, and more than 2,000 others. It allows you to automate repetitive tasks with workflows known as Zaps. Zapier's strength lies in its ability to integrate and automate across a wide array of web applications without requiring any coding knowledge.

Jupyter Notebooks

Jupyter Notebooks are an open-source web application that allows you to create and share documents that contain live code, equations, visualizations, and narrative text. They support extensions that can enhance the interface, add new functionalities, and integrate with other tools and platforms, making them highly popular in data science and academic research for interactive computational experiments.

Trello

Trello is a web-based Kanban-style list-making application that is highly extensible through its Power-Ups feature. These Power-Ups add extra features and integrations with other tools like Google Drive, Slack, GitHub, and more, allowing teams to customize their boards for a wide range of projects and workflows.

Notion

Notion is an all-in-one workspace for note-taking, project management, and collaboration. It supports integration with other apps and services, enhancing its functionality for personal and professional use. While not as openly extensible in terms of developing custom plugins like some other platforms, its API allows for automation and integration, expanding its utility.

These platforms exemplify the importance of extensibility in modern software, providing users with the tools to adapt and extend functionalities to meet their unique requirements, thereby enhancing productivity and facilitating innovation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment