Bledar BunjakuBledar BunjakuSoftware Engineer / Available for contract work
Back to home

Companion AI Diary and Conversation Platform

Companion is a Norway-based AI diary and conversation platform combining AI conversations, structured diary generation and subscription billing.

Visit project site
NestJSPostgreSQLReactOpenAIClaudeStripeWebhooksSession handling

Role

Bledar developed the AI conversation engine, backend APIs, database models, diary generation and Stripe subscription flows.

What to verify

Built AI conversation engine with session handling.

Result

Delivered AI conversation, diary and subscription functionality for a SaaS product.

Problem

The product needed reliable AI conversations, diary generation and paid subscription workflows inside one SaaS platform.

My role

Bledar developed the AI conversation engine, backend APIs, database models, diary generation and Stripe subscription flows.

Main features

  • AI conversation engine
  • Session handling
  • Diary generation from conversations
  • Stripe subscriptions
  • Billing and webhooks
  • Backend APIs and database models
  • AI-generated summaries

Architecture

  • React frontend.
  • NestJS backend services.
  • PostgreSQL database.
  • OpenAI and Claude API integrations.
  • Stripe billing and webhook integration.

Technical decisions

  • Used backend services to keep conversation, diary and billing logic separated.
  • Used Stripe webhooks for subscription and billing status changes.
  • Integrated multiple AI providers where useful for product capability.

Challenges

  • Coordinating AI session state with diary generation.
  • Keeping billing state reliable across webhook events.
  • Designing AI-generated output that stays useful for users.

Results or impact

  • Delivered AI conversation, diary and subscription functionality for a SaaS product.
  • Created backend foundations for AI-powered user workflows.

What I would improve next

  • Add richer AI evaluation and safety checks.
  • Expand tests around billing and AI session edge cases.