Skip to content

CaX: Applied GenAI Multi User Todo GPT App - Implementation of Microservices GenUI Architecture.

Notifications You must be signed in to change notification settings

mjunaidca/caxai

Repository files navigation

CaX: Applied GenAI Multi User Todo GPT App

Implementation of Microservices GenUI Architecture. The Current Microservices are:

  • auth-server: Auth Server to manage Authentication & Authorization
  • todo-server: Simple ToDo Server to authenticate using auth-server & perform TODOs Crud.
  • nextjs-client: Conversational UI & TODOs Manager platform for you.

Running Locally & Development:

You can setup & run the project locally on your machine or on docker. Firstly let'e setup the env vars.

  • In auth-server Rename .env.example to .env and add DB_URL, TEST_DB_URL, SECRET_KEY

  • In todo-server add DB_URL & TEST_DB_URL. They can be same as above or different

  • For nextjs-client run pnpm install - no need to update them

1. Local Machine

Open root dir i.e: cax in terminal and run

  1. Terminal 1: make auth & visit http://localhost:8080/api/docs
  2. Terminal 2: make todo & visit http://localhost:8000/api/docs
  3. Terminal 3: make next & visit http://localhost:3000

2. Docker

Rename root .env.example to .env and add the missing env vars (DB_URL=, TEST_DB_URL=, SECRET_KEY=)

Run: docker compose -d up

Deployment:

We will be deploying FastAPI Microservices to Google Cloud Run and NextJS CUI to Vercel.

  1. Ensure your have gcloud and vercel cli installed & authenticated

  2. auth-server

cd auth-server

gcloud run deploy auth-server --source . --port 8080 --env-vars-file .env.gcp.yaml --allow-unauthenticated --region us-central1 --min-instances 1
  1. todo-server
cd todo-server

gcloud run deploy todo-micro-server --source . --port 8000 --env-vars-file .env.gcp.yaml --allow-unauthenticated --region us-central1 --min-instances 1
  1. nextjs-client
cd nextjs-client

vercel link

Then visit vercel and add all env vars to your project and in terminal run:

vercel --prod

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy