Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bengabp/querybuilder
https://github.com/bengabp/querybuilder
Last synced: 3 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/bengabp/querybuilder
- Owner: bengabp
- Created: 2024-04-28T11:41:58.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-04-28T11:42:24.000Z (9 months ago)
- Last Synced: 2024-04-28T12:38:55.407Z (9 months ago)
- Language: Python
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# QueryBuilder
Powerful project to search through a custom dataset like crunchbase## Frontend
The frontend has been built with react and material ui
Before running the frontend make sure you have Node.js and npm installed on your pc.
Make sure to change the api_uri in `/frontend/src/components/queryblocks/AutocompleteField.jsx`
You can start the React frontend by running this command inside the `frontend/` directory### Running the frontend
- Linux
if you already run linux, then you could use the bash script `start_frontend.sh`
- Windows
```bash
# Install packages
cd frontend/
npm install --legacy-peer-deps
# Build project
npm run build
# Serve project
npm install --legacy-peer-deps serve
npm run serve
```## Backend
The backend has been written in fastapi
To run the backend server you need to make sure you have python3.9
installed on your pc. Then install the packages using this command
```commandline
pip install -r requirements.txt
```Start the api server. This command must be run inside the `backend/` directory
```commandline
uvicorn --host 0.0.0.0 --port 8080
```Alternatively you could run the backend using docker
```commandline
docker-compose up --build
```## Database
Application is strictly based on mongodb database.
It relies on using aggregate searches from mongodb which is quite powerful.
Aggregate pipelines allow you to index your data, performing more complex
queries than just normal find and find_one commands.## ProTip:
- When you run the api server go to /redoc to view the api documentation
- You can use the `migrate_companies_data` method in the `DBConnection` class in backend/db.py to migrate your data