Team Y
Objective
Create personal AI powered assistant that can help with day to day task improve my performance
Tools & Technologies
Fastify Node.js JavaScript TypeScript OAuth2 Google API Prisma Zod langachain Vecel- /blob Vercel- /kv puppeteer
Social share
Challenge
Team Y application is a backend for AI assistant. It is fronted agnostic with user experiance in mind, only just a few of endpoint when interacting with assistant. Main features supported:
- session management
- security
- conversation with bot
- storage of conversations
- long and short term memory
- integration with Google service (calendar, tasks, gmail)
- advanced RAG techniques see more in this post
- ingestion of documents
- voice transcrition
This application is built using TypeScript. It uses Node.js for runtime. The application uses Fastify, a fast and low overhead web framework for Node.js, for handling HTTP requests. The application uses Prisma, an open-source database toolkit, for database operations, dotenv for managing environment variables. Vercel/blob is used for file storage and Vercel/kv for Redis like database.
Here is a specyfication of API:
- User
- /register POST
- /session POST
- /login POST
- /logout POST
- Conversation
- /ask POST
- /snippets GET
- Action
- /transcribe POST
- /transcribeAndAsk POST
- /uploadfile
- /uploadrecording
- Chat
- /create POST
- /:chatId GET
- /getchats/:botId GET