complexity

complexity

⚡ Supercharge your Perplexity.ai

Stars: 237

Visit
 screenshot

Complexity is a community-driven, open-source, and free third-party extension that enhances the features of Perplexity.ai. It provides various UI/UX/QoL tweaks, LLM/Image gen model selectors, a customizable theme, and a prompts library. The tool intercepts network traffic to alter the behavior of the host page, offering a solution to the limitations of Perplexity.ai. Users can install Complexity from Chrome Web Store, Mozilla Add-on, or build it from the source code.

README:

Complexity

An enhanced version of Perplexity.ai which everyone has ever wanted.
Community-driven, open-source, and free to use.

Stable version Alpha version Discord
Chrome Web Store Rating Chrome Web Store Users Mozilla Add-on Rating Mozilla Add-on Users

Complexity is a third-party extension, it does NOT affiliate with Perplexity.ai.

💖 support the development

Paypal Ko-fi

Perplexity.ai is famously known for its LLM-based search engine, but many may not know that it is also a decent portal which provides access to various SOTA LLMs and image generation models and have somewhat a very generous rate limit compared to other services. But it lacks a lot of basic features, the UX isn't that great either. Hence, Complexity was created to fill that gap.

[!NOTE] Complexity is going freemium! Read more.

Complexity will enrich your experience with:

  • LLM/Image gen model selectors.
  • Directly chat to a collection.
  • Export your searches/conversations.
  • Highly customizable ADHD-friendly theme (custom css is supported).
  • Various UI/UX/QoL tweaks.
  • A dedicated solution for prompts management: Prompts Library (in development).
  • And many more...

Read more

How does it work?

This is a high-level overview of the network traffic interception approach, which provides the extension with the ability to alter the behavior of the host page.

graph TD
    subgraph Browser
        W[perplexity.ai]
        CS[Content Scripts]
        BP[Background Page]
    end

    subgraph InterceptAPIs
        WI[Interceptor Instance]
        WI --> PWS[Proxy WebSocket]
        WI --> PXHR[Proxy XMLHttpRequest]
    end

    subgraph Interceptors
        WM[Controller]
        WM --> MP[Message Processor]
        WM --> IC[Interceptor Chain]
    end

    W <--> |WebSocket/XHR| PWS
    W <--> |WebSocket/XHR| PXHR

    WI <-.-> WM

    CS <--> WM
    BP <--> WM

    MP --> IC
    IC --> MP

    classDef singleton fill:#72aefd,stroke:#333,color:#ffffff,stroke-width:2px;
    class WI,WM singleton;

Read more

Installation

Build from source

  1. Clone this repository.
  2. pnpm build or pnpm build:firefox.
  3. Load the extension from the dist folder.

Limitations

  • Because of frequent/unexpected changes in the host page, UI tweaks are prone to breakage and it will take some time for the review process to be passed.
  • The dev runtime/overall DX on mozilla-based browsers is non-existent due to a non-compatible dev dependency @crxjs/vite-plugin.
  • Limited testing: the e2e test suite has not been implemented due to the aggressive Cloudflare protection of the host page itself (I'm still figuring out a way 🙂)

Contributing

[!NOTE] The project is undergoing significant refactoring, thus PRs are not welcome at the moment.

Acknowledgements

Reaching out 👋

Support the development 💖

For Tasks:

Click tags to check more tools for each tasks

For Jobs:

Alternative AI tools for complexity

Similar Open Source Tools

For similar tasks

For similar jobs