project screenshot 1
project screenshot 2
project screenshot 3

PortfolAI

PortfolAI is an AI-driven bot that personifies market sentiment, providing real-time emotional insights by analyzing social media, news, and market data. Through a relatable character, it expresses emotions and offers users tips based on current sentiment trends.

PortfolAI

Created At

Agentic Ethereum

Winner of

Coinbase

Coinbase Developer Platform - AgentKit Pool Prize

Prize Pool

Project Description

You're developing PortfolAI, an AI-powered bot that personifies market sentiment to provide users with real-time emotional insights into market movements. Here's a comprehensive overview of your project:

Project Overview:

RiskSentinel is designed to analyze data from social media, news outlets, and financial markets to assess current market sentiment. By embodying this sentiment in a relatable character, the bot offers users an intuitive understanding of market emotions, aiding in informed decision-making.

Objectives:

To deliver real-time insights into market sentiment by analyzing diverse data sources. To enhance user engagement through a character that dynamically reflects market emotions. To assist users in making informed decisions based on current sentiment trends. Key Features:

Sentiment Analysis:

Aggregates and examines data from social media platforms, financial news, and market statistics. Utilizes Natural Language Processing (NLP) to determine sentiment polarity and intensity. Dynamic Character Representation:

Introduces a character that exhibits emotions such as excitement, fear, or optimism, mirroring the analyzed market sentiment. Ensures the character's reactions update in real-time to reflect sentiment fluctuations. User Engagement and Insights:

Provides actionable tips and information aligned with current sentiment trends. Offers an interactive interface where users can observe the character's emotions and access sentiment-driven insights. Technical Approach:

Data Collection: Integrate APIs from social media platforms (e.g., Twitter), financial news sources, and market data providers to gather real-time information. Sentiment Analysis: Employ NLP libraries such as NLTK or spaCy to process and analyze textual data, determining overall market sentiment. Character Animation: Develop a dynamic character using animation frameworks that can display a range of emotions based on sentiment analysis results. User Interface: Create an intuitive dashboard that showcases the character's emotional state and provides users with sentiment-related insights and recommendations. Implementation Steps:

Data Aggregation:

Set up data pipelines to continuously collect information from selected sources. Implement data cleaning and preprocessing to ensure accuracy and relevance. Sentiment Processing:

Analyze the preprocessed data to gauge market sentiment. Classify sentiment into categories that correspond to specific emotional states for the character. Character Development:

Design the character's visual elements and emotional expressions. Map sentiment categories to corresponding character animations. Interface Design:

Develop a user-friendly interface displaying the animated character. Integrate sentiment insights and actionable tips for users. Testing and Refinement:

Conduct user testing to gather feedback on functionality and engagement. Refine features and performance based on user input and testing outcomes. Expected Outcomes:

Users gain a clearer understanding of market sentiment through an engaging and intuitive platform. Enhanced decision-making capabilities based on real-time sentiment analysis. Increased user engagement through interactive and dynamic content delivery. Potential Challenges:

Ensuring the accuracy and reliability of sentiment analysis amidst diverse data sources. Maintaining real-time performance while processing large volumes of data. Designing a character that resonates with a broad user base and effectively conveys complex emotional states.

How it's Made

his project is built using Next.js, a popular React framework that enables server-side rendering and static site generation. Here are some of the key technologies and details about how they are pieced together: Technologies Used: Next.js: The core framework for building the application, providing routing, server-side rendering, and API routes. React: The underlying library for building user interfaces, allowing for component-based architecture. TypeScript: A superset of JavaScript that adds static typing, enhancing code quality and maintainability. Privy: A third-party authentication service integrated via the @privy-io/react-auth package, which simplifies user authentication with various login methods. Integration Details: PrivyProvider: The PrivyProvider component wraps the main application component (MyApp). It is configured with an appId and a set of login methods, which include email and wallet options. This setup allows users to authenticate easily and securely. Environment Variables: The appId is sourced from environment variables (NEXT_PUBLIC_PRIVY_APP_ID), ensuring sensitive information is not hardcoded into the application. Notable Implementations: Custom Appearance: The appearance configuration for the PrivyProvider allows for customization of the authentication UI, such as setting a light theme and a specific accent color. This helps maintain brand consistency across the application. Type Safety: Using TypeScript throughout the project ensures that the code is type-checked, reducing runtime errors and improving developer experience. Hacky Solutions: Dynamic Imports: If there are components that are heavy or not needed immediately, I might use dynamic imports to load them only when required. This can improve the initial load time of the application. Custom Hooks: I created custom hooks for managing authentication state and user data, which helps in keeping the components clean and focused on rendering. Overall, the combination of these technologies and practices results in a robust, maintainable, and user-friendly application. The integration of Privy for authentication is particularly beneficial as it abstracts away much of the complexity involved in managing user sessions and security.

background image mobile

Join the mailing list

Get the latest news and updates