removed changes from readme

This commit is contained in:
mpawank 2025-05-14 08:54:40 +05:30
parent 9d5dd56306
commit 445e02b71b

138
README.md
View file

@ -1,13 +1,17 @@
![new_header](https://github.com/user-attachments/assets/e236b764-0ddc-42ff-a1f1-8fbb3d2e0e65) ![new_header](https://github.com/user-attachments/assets/e236b764-0ddc-42ff-a1f1-8fbb3d2e0e65)
# SurfSense
# SurfSense
While tools like NotebookLM and Perplexity are impressive and highly effective for conducting research on any topic/query, SurfSense elevates this capability by integrating with your personal knowledge base. It is a highly customizable AI research agent, connected to external sources such as search engines (Tavily, LinkUp), Slack, Linear, Notion, YouTube, GitHub and more to come. While tools like NotebookLM and Perplexity are impressive and highly effective for conducting research on any topic/query, SurfSense elevates this capability by integrating with your personal knowledge base. It is a highly customizable AI research agent, connected to external sources such as search engines (Tavily, LinkUp), Slack, Linear, Notion, YouTube, GitHub and more to come.
<div align="center"> <div align="center">
<a href="https://trendshift.io/repositories/13606" target="_blank"><img src="https://trendshift.io/api/badge/repositories/13606" alt="MODSetter%2FSurfSense | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a> <a href="https://trendshift.io/repositories/13606" target="_blank"><img src="https://trendshift.io/api/badge/repositories/13606" alt="MODSetter%2FSurfSense | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
</div> </div>
# Video # Video
https://github.com/user-attachments/assets/48142909-6391-4084-b7e8-81da388bb1fc https://github.com/user-attachments/assets/48142909-6391-4084-b7e8-81da388bb1fc
@ -20,46 +24,31 @@ https://github.com/user-attachments/assets/d516982f-de00-4c41-9e4c-632a7d942f41
https://github.com/user-attachments/assets/bf64a6ca-934b-47ac-9e1b-edac5fe972ec https://github.com/user-attachments/assets/bf64a6ca-934b-47ac-9e1b-edac5fe972ec
## Key Features
## Key Features
### 1. Latest ### 1. Latest
#### 💡 **Idea**: #### 💡 **Idea**:
Have your own highly customizable private NotebookLM and Perplexity integrated with external sources. Have your own highly customizable private NotebookLM and Perplexity integrated with external sources.
#### 📁 **Multiple File Format Uploading Support** #### 📁 **Multiple File Format Uploading Support**
Save content from your own personal files *(Documents, images and supports **27 file extensions**)* to your own personal knowledge base .
Save content from your own personal files _(Documents, images and supports **27 file extensions**)_ to your own personal knowledge base .
#### 🔍 **Powerful Search** #### 🔍 **Powerful Search**
Quickly research or find anything in your saved content . Quickly research or find anything in your saved content .
#### 💬 **Chat with your Saved Content** #### 💬 **Chat with your Saved Content**
Interact in Natural Language and get cited answers.
Interact in Natural Language and get cited answers.
#### 📄 **Cited Answers** #### 📄 **Cited Answers**
Get Cited answers just like Perplexity. Get Cited answers just like Perplexity.
#### 🔔 **Privacy & Local LLM Support** #### 🔔 **Privacy & Local LLM Support**
Works Flawlessly with Ollama local LLMs. Works Flawlessly with Ollama local LLMs.
#### 🏠 **Self Hostable** #### 🏠 **Self Hostable**
Open source and easy to deploy locally. Open source and easy to deploy locally.
#### 🎙️ Podcasts
#### 🎙️ Podcasts
- Blazingly fast podcast generation agent. (Creates a 3-minute podcast in under 20 seconds.) - Blazingly fast podcast generation agent. (Creates a 3-minute podcast in under 20 seconds.)
- Convert your chat conversations into engaging audio content - Convert your chat conversations into engaging audio content
- Support for multiple TTS providers (OpenAI, Azure, Google Vertex AI) - Support for multiple TTS providers (OpenAI, Azure, Google Vertex AI)
#### 📊 **Advanced RAG Techniques** #### 📊 **Advanced RAG Techniques**
- Supports 150+ LLM's - Supports 150+ LLM's
- Supports 6000+ Embedding Models. - Supports 6000+ Embedding Models.
- Supports all major Rerankers (Pinecode, Cohere, Flashrank etc) - Supports all major Rerankers (Pinecode, Cohere, Flashrank etc)
@ -68,7 +57,6 @@ Open source and easy to deploy locally.
- RAG as a Service API Backend. - RAG as a Service API Backend.
#### **External Sources** #### **External Sources**
- Search Engines (Tavily, LinkUp) - Search Engines (Tavily, LinkUp)
- Slack - Slack
- Linear - Linear
@ -78,16 +66,19 @@ Open source and easy to deploy locally.
- and more to come..... - and more to come.....
#### 🔖 Cross Browser Extension #### 🔖 Cross Browser Extension
- The SurfSense extension can be used to save any webpage you like. - The SurfSense extension can be used to save any webpage you like.
- Its main usecase is to save any webpages protected beyond authentication. - Its main usecase is to save any webpages protected beyond authentication.
## FEATURE REQUESTS AND FUTURE ## FEATURE REQUESTS AND FUTURE
**SurfSense is actively being developed.** While it's not yet production-ready, you can help us speed up the process. **SurfSense is actively being developed.** While it's not yet production-ready, you can help us speed up the process.
Join the [SurfSense Discord](https://discord.gg/ejRNvftDp9) and help shape the future of SurfSense! Join the [SurfSense Discord](https://discord.gg/ejRNvftDp9) and help shape the future of SurfSense!
## How to get started? ## How to get started?
### Installation Options ### Installation Options
@ -95,7 +86,6 @@ Join the [SurfSense Discord](https://discord.gg/ejRNvftDp9) and help shape the f
SurfSense provides two installation methods: SurfSense provides two installation methods:
1. **[Docker Installation](https://www.surfsense.net/docs/docker-installation)** - The easiest way to get SurfSense up and running with all dependencies containerized. 1. **[Docker Installation](https://www.surfsense.net/docs/docker-installation)** - The easiest way to get SurfSense up and running with all dependencies containerized.
- Includes pgAdmin for database management through a web UI - Includes pgAdmin for database management through a web UI
- Supports environment variable customization via `.env` file - Supports environment variable customization via `.env` file
- See [Docker Setup Guide](DOCKER_SETUP.md) for detailed instructions - See [Docker Setup Guide](DOCKER_SETUP.md) for detailed instructions
@ -105,7 +95,6 @@ SurfSense provides two installation methods:
Both installation guides include detailed OS-specific instructions for Windows, macOS, and Linux. Both installation guides include detailed OS-specific instructions for Windows, macOS, and Linux.
Before installation, make sure to complete the [prerequisite setup steps](https://www.surfsense.net/docs/) including: Before installation, make sure to complete the [prerequisite setup steps](https://www.surfsense.net/docs/) including:
- PGVector setup - PGVector setup
- Google OAuth configuration - Google OAuth configuration
- Unstructured.io API key - Unstructured.io API key
@ -113,21 +102,22 @@ Before installation, make sure to complete the [prerequisite setup steps](https:
## Screenshots ## Screenshots
**Search Spaces** **Search Spaces**
![search_spaces](https://github.com/user-attachments/assets/e254c38c-f937-44b6-9e9d-770db583d099) ![search_spaces](https://github.com/user-attachments/assets/e254c38c-f937-44b6-9e9d-770db583d099)
**Manage Documents** **Manage Documents**
![documents](https://github.com/user-attachments/assets/7001e306-eb06-4009-89c6-8fadfdc3fc4d) ![documents](https://github.com/user-attachments/assets/7001e306-eb06-4009-89c6-8fadfdc3fc4d)
**Research Agent** **Research Agent**
![researcher](https://github.com/user-attachments/assets/fda3e61f-f936-4b66-b565-d84edde44a67) ![researcher](https://github.com/user-attachments/assets/fda3e61f-f936-4b66-b565-d84edde44a67)
**Podcast Agent** **Podcast Agent**
![podcasts](https://github.com/user-attachments/assets/6cb82ffd-9e14-4172-bc79-67faf34c4c1c) ![podcasts](https://github.com/user-attachments/assets/6cb82ffd-9e14-4172-bc79-67faf34c4c1c)
**Agent Chat**
**Agent Chat**
![chat](https://github.com/user-attachments/assets/bb352d52-1c6d-4020-926b-722d0b98b491) ![chat](https://github.com/user-attachments/assets/bb352d52-1c6d-4020-926b-722d0b98b491)
@ -137,86 +127,89 @@ Before installation, make sure to complete the [prerequisite setup steps](https:
![ext2](https://github.com/user-attachments/assets/a9b9f1aa-2677-404d-b0a0-c1b2dddf24a7) ![ext2](https://github.com/user-attachments/assets/a9b9f1aa-2677-404d-b0a0-c1b2dddf24a7)
## Tech Stack ## Tech Stack
### **BackEnd**
- **FastAPI**: Modern, fast web framework for building APIs with Python ### **BackEnd**
- **PostgreSQL with pgvector**: Database with vector search capabilities for similarity searches - **FastAPI**: Modern, fast web framework for building APIs with Python
- **PostgreSQL with pgvector**: Database with vector search capabilities for similarity searches
- **SQLAlchemy**: SQL toolkit and ORM (Object-Relational Mapping) for database interactions - **SQLAlchemy**: SQL toolkit and ORM (Object-Relational Mapping) for database interactions
- **Alembic**: A database migrations tool for SQLAlchemy. - **Alembic**: A database migrations tool for SQLAlchemy.
- **FastAPI Users**: Authentication and user management with JWT and OAuth support - **FastAPI Users**: Authentication and user management with JWT and OAuth support
- **LangGraph**: Framework for developing AI-agents. - **LangGraph**: Framework for developing AI-agents.
- **LangChain**: Framework for developing AI-powered applications.
- **LangChain**: Framework for developing AI-powered applications. - **LLM Integration**: Integration with LLM models through LiteLLM
- **LLM Integration**: Integration with LLM models through LiteLLM - **Rerankers**: Advanced result ranking for improved search relevance
- **Rerankers**: Advanced result ranking for improved search relevance - **Hybrid Search**: Combines vector similarity and full-text search for optimal results using Reciprocal Rank Fusion (RRF)
- **Hybrid Search**: Combines vector similarity and full-text search for optimal results using Reciprocal Rank Fusion (RRF) - **Vector Embeddings**: Document and text embeddings for semantic search
- **Vector Embeddings**: Document and text embeddings for semantic search - **pgvector**: PostgreSQL extension for efficient vector similarity operations
- **pgvector**: PostgreSQL extension for efficient vector similarity operations - **Chonkie**: Advanced document chunking and embedding library
- Uses `AutoEmbeddings` for flexible embedding model selection
- `LateChunker` for optimized document chunking based on embedding model's max sequence length
- **Chonkie**: Advanced document chunking and embedding library
- Uses `AutoEmbeddings` for flexible embedding model selection
- `LateChunker` for optimized document chunking based on embedding model's max sequence length
--- ---
### **FrontEnd**
### **FrontEnd** - **Next.js 15.2.3**: React framework featuring App Router, server components, automatic code-splitting, and optimized rendering.
- **Next.js 15.2.3**: React framework featuring App Router, server components, automatic code-splitting, and optimized rendering. - **React 19.0.0**: JavaScript library for building user interfaces.
- **React 19.0.0**: JavaScript library for building user interfaces. - **TypeScript**: Static type-checking for JavaScript, enhancing code quality and developer experience.
- **TypeScript**: Static type-checking for JavaScript, enhancing code quality and developer experience.
- **Vercel AI SDK Kit UI Stream Protocol**: To create scalable chat UI. - **Vercel AI SDK Kit UI Stream Protocol**: To create scalable chat UI.
- **Tailwind CSS 4.x**: Utility-first CSS framework for building custom UI designs. - **Tailwind CSS 4.x**: Utility-first CSS framework for building custom UI designs.
- **Shadcn**: Headless components library. - **Shadcn**: Headless components library.
- **Lucide React**: Icon set implemented as React components. - **Lucide React**: Icon set implemented as React components.
- **Framer Motion**: Animation library for React. - **Framer Motion**: Animation library for React.
- **Sonner**: Toast notification library. - **Sonner**: Toast notification library.
- **Geist**: Font family from Vercel. - **Geist**: Font family from Vercel.
- **React Hook Form**: Form state management and validation. - **React Hook Form**: Form state management and validation.
- **Zod**: TypeScript-first schema validation with static type inference. - **Zod**: TypeScript-first schema validation with static type inference.
- **@hookform/resolvers**: Resolvers for using validation libraries with React Hook Form. - **@hookform/resolvers**: Resolvers for using validation libraries with React Hook Form.
- **@tanstack/react-table**: Headless UI for building powerful tables & datagrids. - **@tanstack/react-table**: Headless UI for building powerful tables & datagrids.
### **DevOps**
- **Docker**: Container platform for consistent deployment across environments ### **DevOps**
- **Docker Compose**: Tool for defining and running multi-container Docker applications - **Docker**: Container platform for consistent deployment across environments
- **Docker Compose**: Tool for defining and running multi-container Docker applications
- **pgAdmin**: Web-based PostgreSQL administration tool included in Docker setup - **pgAdmin**: Web-based PostgreSQL administration tool included in Docker setup
### **Extension**
Manifest v3 on Plasmo ### **Extension**
Manifest v3 on Plasmo
## Future Work ## Future Work
- Add More Connectors. - Add More Connectors.
- Patch minor bugs. - Patch minor bugs.
- Implement Canvas. - Implement Canvas.
- Complete Hybrid Search. **[Done]** - Complete Hybrid Search. **[Done]**
- Add support for file uploads QA. **[Done]** - Add support for file uploads QA. **[Done]**
- Shift to WebSockets for Streaming responses. **[Deprecated in favor of AI SDK Stream Protocol]** - Shift to WebSockets for Streaming responses. **[Deprecated in favor of AI SDK Stream Protocol]**
@ -227,7 +220,9 @@ Manifest v3 on Plasmo
- Basic keyword search page for saved sessions **[Done]** - Basic keyword search page for saved sessions **[Done]**
- Multi & Single Document Chat **[Done]** - Multi & Single Document Chat **[Done]**
## Contribute
## Contribute
Contributions are very welcome! A contribution can be as small as a ⭐ or even finding and creating issues. Contributions are very welcome! A contribution can be as small as a ⭐ or even finding and creating issues.
Fine-tuning the Backend is always desired. Fine-tuning the Backend is always desired.
@ -241,3 +236,4 @@ Fine-tuning the Backend is always desired.
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=MODSetter/SurfSense&type=Date" /> <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=MODSetter/SurfSense&type=Date" />
</picture> </picture>
</a> </a>