IS-Bro is not just another note-taking app. It's a smart companion designed to help you transform your raw, fleeting ideas into well-structured, actionable concepts. Think of it as a personal mentor that guides you through a process of critical thinking and refinement, using the power of AI to ask the right questions and provide insightful feedback.
This project was born out of the frustration of having countless "shower thoughts" and "midnight epiphanies" that never saw the light of day. IS-Bro is our attempt to build a tool that we've always wanted – a tool that helps you think better.
The process is simple and conversational:
- Start a Conversation: You begin by telling IS-Bro about your idea, no matter how vague or unstructured it is.
- AI-Powered Dialogue: The AI assistant will then engage you in a Socratic dialogue, asking probing questions to help you flesh out the details, identify potential challenges, and explore different angles.
- Multi-Perspective Analysis: Get feedback from different AI personas (e.g., a "skeptic," an "innovator," a "customer") to see your idea from various viewpoints.
- Research and Insights: IS-Bro can perform market research, analyze competitors, and identify market trends to give your idea real-world context.
- Visualize and Organize: The visual mapping feature helps you see the connections between different parts of your idea, creating a clear conceptual map.
- Summarize and Export: At any point, you can get a summary of your conversation or export the entire dialogue in various formats.
- 🧠 AI Mentorship: At its core, IS-Bro uses a Socratic questioning method to help you refine your ideas. It's not just about getting answers; it's about asking the right questions.
- 🤖 Multi-AI Personas: Powered by a variety of leading AI models like Google's Gemini, you can get feedback from different "personalities" to gain diverse perspectives on your idea.
- 📈 Market Research: Integrated tools to perform on-the-fly market research. Understand the competitive landscape, identify your target audience, and get a sense of market trends without leaving the app.
- 🗺️ Visual Idea Mapping: See your ideas come to life with interactive concept maps. This helps in understanding the relationships and hierarchy of your thoughts.
- 📊 Analytics Dashboard: Track your creative process. The dashboard provides insights into your conversations, helping you understand your own thought patterns and creative habits.
- 📚 Conversation Templates: Start your brainstorming sessions with pre-built templates designed for specific goals, like developing a business plan, creating a marketing strategy, or outlining a creative project.
- 🔍 Full-Text Search: Easily search through all your past conversations to find that one brilliant idea you had months ago.
- 💾 Export and Share: Export your conversations to Markdown or JSON to easily share them with others or use them in other applications.
- 🌙 Light/Dark Mode: For those late-night brainstorming sessions.
We've used a modern tech stack to build IS-Bro, focusing on performance, scalability, and a great developer experience.
- Framework: FastAPI for building a high-performance, asynchronous API.
- AI Integration: Seamlessly integrates with multiple AI providers.
- Database: SQLAlchemy as the ORM for database interactions.
- Authentication: Secure user authentication using JWT with
passlibandpython-jose. - Data Validation: Pydantic for robust data validation and settings management.
- Framework: Next.js 14 with the App Router.
- Language: TypeScript for type safety and improved developer experience.
- Styling: Tailwind CSS for a utility-first CSS workflow.
- UI Components: Built with reusable React components and Lucide React for icons.
- State Management: A combination of React's built-in state management and Context API.
Ready to give it a spin? Here's how you can get the project running on your local machine.
Prerequisites:
- Python 3.8+
- Node.js 18+
-
Navigate to the backend directory:
cd backend -
Install the required Python packages:
pip install -r requirements.txt
-
Set up your environment variables: You'll need to create a
.envfile in thebackenddirectory. This file will store your API keys for the AI services. You can use the.env.examplefile as a template.# .env GOOGLE_API_KEY="your_google_api_key" # Add other API keys as needed -
Run the backend server:
uvicorn main:app --reload
The backend server will be running at
http://localhost:8000.
-
Navigate to the frontend directory:
cd frontend -
Install the required Node.js packages:
npm install
-
Run the frontend development server:
npm run dev
The frontend application will be available at
http://localhost:3000.
Here's a high-level overview of the project's structure:
.
├── backend/
│ ├── main.py # The main FastAPI application file
│ ├── ai_service.py # Handles interactions with AI models
│ ├── auth_service.py # Manages user authentication
│ ├── database.py # Database connection and session management
│ ├── models.py # Pydantic models for API requests/responses
│ ├── requirements.txt # Python dependencies
│ └── ... # Other service modules
│
├── frontend/
│ ├── app/ # The core of the Next.js application (App Router)
│ │ ├── page.tsx # The main page component
│ │ ├── layout.tsx # The main layout for the application
│ │ └── components/ # Reusable React components for the app
│ ├── components/ # Shared React components
│ ├── contexts/ # React contexts (e.g., AuthContext)
│ ├── services/ # Services for making API calls to the backend
│ ├── package.json # Node.js dependencies
│ └── ... # Other Next.js files
│
└── README.md # This file
We're excited that you're interested in contributing to IS-Bro! At the moment, we're still in the early stages of development, but we welcome any and all contributions.
If you'd like to contribute, please feel free to fork the repository and submit a pull request. For major changes, please open an issue first to discuss what you would like to change.
This project is licensed under the MIT License. See the LICENSE file for more details.
- Launch both backend and frontend servers
- Navigate to
http://localhost:3000 - Share your idea - no matter how rough
- Follow AI guidance through refinement stages
- Export your structured proposal
POST /api/chat- Send messages and get AI responsesGET /api/conversation/{id}- Retrieve conversation historyPOST /api/proposal/{id}- Generate structured proposalGET /health- Service health check
Clean architecture with separation of concerns:
ai_service.py- AI model integration and logicmodels.py- Database schemas and data structuresmain.py- API routes and endpointsfrontend/components/- React UI components
MIT License