Code Monkey home page Code Monkey logo

casibase's Introduction

📦⚡️ Casibase

A pioneering customizable open-source Domain Knowledge Base (DKB) powered by ChatGPT, Casbin, and Casdoor.

semantic-release docker pull casbin/casibase GitHub Workflow Status (branch) GitHub Release Docker Image Version (latest semver)

Go Report Card license GitHub issues GitHub stars GitHub forks Crowdin Discord

Architecture

casibase contains 4 parts:

Name Description Language
Frontend User interface for the casibase application JavaScript + React
Backend Server-side logic and API for casibase Golang + Beego + Python + Flask + MySQL
AI Model Artificial intelligence model Python + OpenAI
Knowledge Base Storage for casibase application domain knowledge pgvector

0-Architecture-casibase

Demo Installation

casibase uses Casdoor to manage members. So you need to create an organization and an application for casibase in a Casdoor instance.

Casdoor configuration

git clone https://github.com/casdoor/casdoor.git

refer to: https://casdoor.org/docs/basic/server-installation

Follow these steps to setup Casdoor for casibase:

  • Create an Organization1-Add-organization

  • Configure information about the Organization2-Configure-information-organization

  • Add a member to a newly created organization3-Check-user4-Add-member-to-organization

  • Configure member information (remember its Name as well as Password)5-Configure-new-user

  • Create a new Application6-Add-application

  • Configuring Application Information (Remember Name, ClientID and ClientSecret. Change RedirectURLs to http://localhost:14000/callback) 7-Configure-new-application

casibase configuration

Get the code

git clone https://github.com/casbin/casibase.git

Setup database

casibase will store its users, nodes and topics informations in a MySQL database named: casibase, will create it if not existed. The DB connection string can be specified at: https://github.com/casbin/casibase/blob/master/conf/app.conf

dataSourceName = root:123@tcp(localhost:3306)/

Casnode uses XORM to connect to DB, so all DBs supported by XORM can also be used.

Custom config

  • Backend (casibase\conf\app.conf)

    clientId = <Your_clientId_in_Casdoor_configuration>
    clientSecret = <Your_clientSecret_in_Casdoor_configuration>
    casdoorDbName = casdoor
    casdoorOrganization = "casibase"
    casdoorApplication = "app-casibase"
  • Frontend (casibase\web\src\Conf.js)

    export const AuthConfig = {
      ......
      clientId: <Your_clientId_in_Casdoor_configuration>,
      ......
    };

Run casnode

  • Backend (casibase)

    go run main.go
  • Frontend (casibase\web)

    yarn install
    yarn start

Preview

Access the login view via the following link:

http://localhost:13001

8-Preview-base-wordsets

9-Preview-casibase-stores

The casibase demo is shown above, and in the future users can upload various knowledge files, wordsets, and factorsets to achieve a customized domain knowledge base.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.