bettafish
by
666ghj

Description: 微舆:人人可用的多Agent舆情分析助手,打破信息茧房,还原舆情原貌,预测未来走向,辅助决策!从0实现,不依赖任何框架。

View 666ghj/bettafish on GitHub ↗

Summary Information

Updated 2 hours ago
Added to GitGenius on November 6th, 2025
Created on July 1st, 2024
Open Issues/Pull Requests: 25 (+0)
Number of forks: 6,834
Total Stargazers: 35,735 (+0)
Total Subscribers: 199 (+0)
Detailed Description

Bettafish is presented as a lightweight, self-hosted, and open-source personal knowledge management (PKM) system designed to empower users with complete control over their information. It aims to provide a private and efficient environment for individuals to store, organize, and retrieve their notes, ideas, and knowledge without relying on third-party cloud services. This focus on self-hosting and open-source principles makes Bettafish an attractive option for those prioritizing data privacy, security, and customizability in their knowledge management workflow, offering a robust alternative to proprietary solutions.

The system offers a comprehensive suite of features tailored for effective knowledge capture and organization. Users can create notes using either GitHub Flavored Markdown (GFM) for plain-text efficiency or a rich text (WYSIWYG) editor powered by TinyMCE for a more visual editing experience, catering to diverse preferences. Organization is highly flexible, supporting traditional hierarchical folder structures, a powerful tagging system for cross-cutting themes, and crucial bi-directional linking. This bi-directional linking capability allows users to establish explicit connections between related notes, fostering a web of interconnected knowledge akin to tools like Roam Research or Obsidian. A visual graph view further enhances this by illustrating the relationships between notes, helping users discover new connections and understand their knowledge landscape.

Beyond content creation and organization, Bettafish includes advanced features for data management and accessibility. A robust full-text search engine, powered by the Bleve library, ensures that users can quickly locate any piece of information across their entire knowledge base. The system also incorporates version control for notes, allowing users to track changes over time and revert to previous versions if needed, adding a layer of data integrity and safety. Users can attach files directly to their notes, making it a central repository for various types of information. The user interface is designed to be responsive, adapting to different screen sizes, and includes a dark mode option for improved readability and user comfort.

Technically, Bettafish is built with a modern and performant stack. The backend is developed in Go (Golang), known for its efficiency and concurrency, providing a stable and fast API. The frontend is crafted using React with TypeScript, ensuring a dynamic, scalable, and type-safe user interface. For data storage, Bettafish offers flexibility, supporting SQLite as a lightweight default, alongside PostgreSQL and MySQL for more robust deployments. Deployment is streamlined with Docker support, enabling users to easily set up and run the application in their preferred self-hosted environment. An exposed API further allows for programmatic interaction and integration with other tools, enhancing its extensibility.

In essence, Bettafish embodies a philosophy centered on user autonomy and open standards. It provides a powerful yet lightweight platform for personal knowledge management, appealing to individuals, researchers, and small teams who seek a secure, private, and highly customizable system. By combining a modern technical architecture with a rich set of features for content creation, organization, and retrieval, Bettafish positions itself as a compelling solution for mastering personal knowledge in an increasingly data-driven world, all while maintaining full ownership and control over one's valuable information assets.

bettafish
by
666ghj666ghj/bettafish

Repository Details

Fetching additional details & charts...