NoSQL is a tool that lets users query databases using natural language. It's designed for those who aren't developers and don't know query language syntax like SQL.
- Java 17
- Docker, Docker compose
git clone https://github.com/janbabak/NoQL.git
cd NoQL/
- Local stack is used for frontend development. It uses a local database and a local backend running like docker-compose services.
- Details are in the Local stack.
-
Development stack is used for backend development and frontend development. It uses a local database and other dependencies running like docker-compose services and backend running on the host machine.
-
It is necessary to create a
NoQL/backend/.env.local
file with the following content:API_KEY="xxx" # change LLAMA_AUTH_TOKEN="xxx" # change AI_STUDIO_API_KEY="xxx" # change NOQL_DB_NAME="database" NOQL_DB_HOST="localhost" NOQL_DB_PORT="5432" NOQL_DB_USERNAME="user" NOQL_DB_PASSWORD="password" # Local databases - should match the NOQL_DB_xxx credentials POSTGRES_PASSWORD="password" POSTGRES_USER="user" POSTGRES_DB="database" # settings PAGINATION_MAX_PAGE_SIZE=100 PAGINATION_DEFAULT_PAGE_SIZE=20 TRANSLATION_RETRIES=3
-
Start Dev stack.
-
Set the development environment. The app will connect to the local database.
export spring_profiles_active=local # TODO: create local profile
-
Start the backend app:
-
Run the backend
cd backend ./gradlew bootRun
- Install the frontend dependencies
cd frontend/NoQL npm install
- Start the frontend
npm run dev
- Connect to the AWS EC2 instance over SSH
ssh ec2-user@3.68.195.75
- Install java
sudo yum update sudo yum install java-17-amazon-corretto-headless.x86_64
- Copy the jar
scp build/libs/backend-0.0.1-SNAPSHOT.jar ec2-user@3.68.195.75:/home/ec2-user
- Run the jar
java -jar backend-0.0.1-SNAPSHOT.jar # the app ends when the session ends java -jar backend-0.0.1-SNAPSHOT.jar > noql.log 2>&1 & # detached with logging