Skip to content

(WIP) AI-Powered Companion for X Activity: Organize, analyze, and visualize your X (Twitter) activity using AI-powered themes and insightful analytics.

Notifications You must be signed in to change notification settings

bjorndavidhansen/x-ai_companion

Repository files navigation

Work in progress.

X Activity Companion

Next.js Tailwind CSS TypeScript

Organize and analyze your X platform activity using AI-powered themes and insights.
Stay in control of your online engagement with smart categorization, analytics, and privacy-first design.


Features

  • Smart Categorization: AI-powered theme detection to automatically group your activities (posts, reposts, likes, bookmarks).
  • Insightful Analytics: Visualize patterns in your engagement with a theme chart and content overview.
  • Privacy First: Your data is encrypted and never shared without permission.
  • Authentication: Secure login using NextAuth to connect with X and manage your account.

Table of Contents


Getting Started

To get a local copy of the project up and running, follow these steps:

Prerequisites

Ensure you have the following installed:

  • Node.js (v18+)
  • npm or yarn
  • Git for version control

Environment Variables

Create a .env file at the root of the project and add the following variables:

# API URLs (Production URLs required for deployment)
NEXT_PUBLIC_API_URL=<your-api-url>
NEXT_PUBLIC_APP_URL=<your-app-url>

# Authentication Secrets
X_CLIENT_ID=<your-client-id>
X_CLIENT_SECRET=<your-client-secret>

# NextAuth secret (required for authentication)
NEXTAUTH_SECRET=<your-secret>

Installation

Clone the repository and install the dependencies:

# Clone the repository
git clone https://github.com/bjorndavidhansen/x-ai_companion.git

# Navigate into the project directory
cd x-ai_companion

# Install dependencies
npm install

Running the Project

Development Server

To start the development server:

npm run dev

This will start the server at http://localhost:3000. You can now open this URL in your browser to see the app in action.

Production Build

To build the app for production:

npm run build
npm start

The production build is optimized and ready to be deployed.


Project Structure

├── app/                    # Next.js pages and layouts
│   ├── dashboard/          # Dashboard page displaying user insights
│   └── page.tsx            # Home page with login CTA
├── components/             # Reusable UI components
│   └── ui/                 # UI components (buttons, cards, modals, etc.)
├── hooks/                  # Custom React hooks for data fetching and state management
├── lib/                    # Helper utilities, authentication, and type guards
├── public/                 # Static assets (e.g., images)
├── styles/                 # Global CSS and Tailwind configuration
└── .env.example            # Sample environment configuration

Available Scripts

Here are the scripts you can use during development:

Script Description
npm run dev Starts the development server.
npm run build Builds the app for production.
npm run start Runs the app in production mode.
npm run lint Lints the code for errors.
npm run lint:fix Fixes any linting issues.
npm run type-check Checks for TypeScript type errors.
npm run format Formats the code with Prettier.

Technology Stack


Contributing

Contributions are welcome! Follow these steps to contribute:

  1. Fork the project.
  2. Create a new branch (git checkout -b feature/YourFeature).
  3. Commit your changes (git commit -m 'Add a cool feature').
  4. Push to the branch (git push origin feature/YourFeature).
  5. Open a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for more information.


Acknowledgements


Contact

Created by Bjorn David Hansen.
Feel free to reach out if you have any questions or feedback!

About

(WIP) AI-Powered Companion for X Activity: Organize, analyze, and visualize your X (Twitter) activity using AI-powered themes and insightful analytics.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages