pearl-ai

byHemen Ashodia

build an Ai blog writer app

LoginDashboardUsersArticlesSettingsTopics
Login

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 5

System Requirements Document (SRD)

Project Name: pearl-ai

1. Introduction

Welcome to the System Requirements Document for pearl-ai, an AI-driven blog generation and publishing tool designed for HEMEN ASHODIA in India. This document outlines the functional and non-functional requirements, user personas, visual design concepts, and technical specifications for the project. Pearl-ai aims to streamline the process of generating, deduplicating, and publishing high-quality blog articles using advanced AI technologies.

2. System Overview

Pearl-ai is a sophisticated AI-powered platform that automates blog generation and publishing. The system allows users to manage topics, integrate sources, deduplicate content using WeaviateDB, and publish articles with AI-generated images. Users can configure rate limits and intervals for topic checks, ensuring flexibility and control over the blog generation process.

Key features include:

  • Topic management and source integration.
  • AI-driven blog generation with deduplication checks.
  • Summary-to-full article flow.
  • Image generation for articles.
  • Publishing and storage of articles within the platform.
  • User-configurable rate limits and frequency intervals.
Page 2 of 5

3. Functional Requirements

  • As a User, I should be able to add a list of topics to write about.
  • As a User, I should be able to add a list of sources for each topic.
  • As a System, I should search for topics on the provided sources and generate new article stories.
  • As a System, I should first write a summary and check in WeaviateDB to deduplicate against existing articles.
  • As a System, I should write a full article if no duplicate is found in WeaviateDB.
  • As a System, I should generate an image for the article using AI tools.
  • As a System, I should publish the article on the platform.
  • As a System, I should save the article in WeaviateDB for future deduplication.
  • As a User, I should be able to configure rate limits on how many blogs the system generates.
  • As a User, I should be able to select intervals for how frequently the system checks for new topics.

4. User Personas

1. Admin

  • Manages platform settings, user accounts, and system configurations.
  • Oversees AI model integration and database maintenance.

2. User

  • Adds topics and sources for blog generation.
  • Configures rate limits and intervals for topic checks.
  • Reviews and publishes generated articles.

5. Visuals Colors and Theme

The visual design of pearl-ai will focus on simplicity, professionalism, and creativity. The following color palette is recommended:

  • Primary Color: Pearl White (#F8F8FF) for a clean and modern look.
  • Secondary Color: Midnight Blue (#191970) for contrast and sophistication.
  • Accent Color: Emerald Green (#50C878) for action buttons and highlights.
  • Background Color: Light Gray (#D3D3D3) for subtlety and readability.

The theme will feature a clean dashboard layout with intuitive navigation, minimalistic icons, and responsive design for both web and mobile platforms.

Page 3 of 5

6. Signature Design Concept

Interactive Blog Generation Dashboard with Dynamic Topic Clouds

The homepage will feature an interactive topic cloud where each topic is represented as a floating bubble. These bubbles will dynamically resize and shift based on their priority or frequency of checks. Users can click on a bubble to view its associated sources, summaries, and generated articles.

Key Features:

  • Animations: Bubbles will gently pulse and float, creating a sense of liveliness. When hovered over, they will expand slightly and display a preview of the topic details.
  • Transitions: Smooth transitions between topic details and article summaries, with fade-in effects for content.
  • Micro-interactions: Users can drag and drop bubbles to reorder priorities or delete topics directly from the cloud.
  • Color Shifts: The topic cloud background will subtly shift between shades of pearl white and midnight blue based on the time of day, creating a dynamic visual experience.

This design concept ensures the homepage is both functional and visually captivating, leaving a lasting impression on users.

7. Non-Functional Requirements

  • The system must ensure high availability and reliability, with a 99.9% uptime guarantee.
  • The platform must support responsive design for seamless use on web and mobile devices.
  • The system must ensure data security and privacy, adhering to GDPR and Indian data protection regulations.
  • The platform must provide fast performance, with blog generation and publishing completed within 5 seconds per article.
  • The system must scale efficiently to handle increased user activity and data storage.

8. Tech Stack

Frontend:

  • React for Web
  • React Native for Mobile App

Backend:

  • Python
  • FastAPI

Database:

  • RDBMS: MySQL or MariaDB (using Alembic for migrations)
  • NoSQL: MongoDB
  • VectorDB: WeaviateDB
Page 4 of 5

AI Models:

  • GPT 5.2 for user-friendly responses.
  • Claude 4.5 Opas for academic or coding work.
  • Gemini 3 Pro for friendly responses.
  • Google Nano Banana for image generation.

AI Tools:

  • Litellm for LLM Routing.
  • Langchain for AI workflow orchestration.

Local Orchestration:

  • Docker
  • Docker-compose

Server-side Orchestration:

  • Kubernetes

9. Assumptions and Constraints

Assumptions:

  • Users will primarily access the platform from India, so default settings will align with IST timezone.
  • The platform will initially target English-language blogs.
  • Users will have basic familiarity with AI-driven tools.

Constraints:

  • The system must comply with Indian data protection laws.
  • The platform must operate within the constraints of the chosen tech stack and AI models.
  • The system must ensure scalability to accommodate future growth.
Page 5 of 5

10. Glossary

  • AI: Artificial Intelligence.
  • WeaviateDB: A vector database used for deduplication and semantic search.
  • Rate Limit: A user-defined restriction on the number of blogs generated within a specific timeframe.
  • Interval: The frequency at which the system checks for new topics.
  • Topic Cloud: A visual representation of topics as floating bubbles on the homepage.

This document provides a comprehensive overview of the requirements and design for pearl-ai. Letโ€™s build something extraordinary, HEMEN! ๐Ÿš€

Login design preview
Login: Sign In
Dashboard: View Overview
Settings: Configure AI Models
Settings: Manage Rate Limits
Settings: Set Intervals
Users: Manage Accounts