GMSKnowVerse is a knowledge management system specifically designed for geographic models. It allows users to create and manage geographic analysis model entries and upload knowledge files (like PDFs, Word documents, etc.) to these models. The system uses Dify's knowledge base API as the backend for document processing and retrieval.
- Create and manage geographic models (climate, terrain, population, etc.)
- Upload and manage knowledge files for each model
- Search functionality for models and documents
- Integration with Dify's knowledge base API for document processing
- Responsive UI with Tailwind CSS
- Vue 3
- JavaScript
- Tailwind CSS
- Axios for API requests
- Vue Router for navigation
- Node.js
- Express
- MongoDB with Mongoose
- Multer for file uploads
- Axios for Dify API integration
GMSKnowVerse/
├── frontend/ # Vue 3 frontend
│ └── GMSKnowVerseFront/
│ ├── public/ # Static files
│ └── src/
│ ├── assets/ # CSS, images, etc.
│ ├── components/ # Vue components
│ ├── pages/ # Vue pages
│ ├── App.vue # Main app component
│ └── main.js # Entry point
│
└── backend/ # Node.js backend
├── config/ # Configuration files
├── controllers/ # Route controllers
├── middleware/ # Express middleware
├── models/ # Mongoose models
├── routes/ # Express routes
├── utils/ # Utility functions
├── .env # Environment variables
└── index.js # Entry point
- Node.js (v14 or higher)
- MongoDB
- Dify API key
-
Navigate to the backend directory:
cd GMSKnowVerse/backend -
Install dependencies:
npm install -
Create a
.envfile with the following variables:PORT=5001 MONGO_URI=mongodb://localhost:27017/gmsknowverse DIFY_API_KEY=your_dify_api_key DIFY_API_URL=http://your_dify_api_url -
Start the server:
npm run dev
-
Navigate to the frontend directory:
cd GMSKnowVerse/frontend/GMSKnowVerseFront -
Install dependencies:
npm install -
Start the development server:
npm run dev
- Open your browser and navigate to
http://localhost:3000 - Create a new geographic model by clicking on "Create New Model"
- Upload knowledge files to the model
- Search for models and documents using the search functionality
GET /api/models- Get all modelsGET /api/models/:id- Get a specific modelPOST /api/models- Create a new modelPUT /api/models/:id- Update a modelDELETE /api/models/:id- Delete a modelGET /api/models/:id/documents- Get all documents for a modelPOST /api/models/:id/documents/upload- Upload a document to a modelPOST /api/models/:id/documents/text- Create a text document for a model
GET /api/documents/:id- Get a specific documentDELETE /api/documents/:id- Delete a documentGET /api/documents/:id/status- Get document indexing statusGET /api/documents/:id/segments- Get document segments
This project is licensed under the MIT License.