CaptionLab is a JavaFX-based desktop application designed to generate optimized, engaging social media content. Built with Java 25 and Maven, it leverages OpenAI's API (specifically the gpt-5-nano model) to create custom post captions, reel captions, hashtags, and content ideas tailored to specific platforms and tones.
- Multi-Platform Support: Generate tailored content for LinkedIn, Instagram, Facebook, and TikTok.
- Content Types: Choose between Post Captions, Reels Captions, Hashtags, and Content Ideas.
- Versatile Tone Selection: Customize the output's tone (e.g., Professional, Casual, Funny, Promotional, Inspirational, Educational, etc.).
- AI-Powered Integration: Uses the OpenAI API to craft platform-friendly, SEO-optimized text complete with relevant emojis, bypassing the need for manual prompt engineering.
- Clean UI: Easy-to-use JavaFX interface with selection fields, a description area, clear generated output, and convenient one-click copy utility.
- Java Development Kit (JDK) 25: Ensure JDK 25 is installed and configured in your system environment.
- Maven: Use the included Maven wrapper (
mvnw/mvnw.cmd) or your local Maven installation (version 3.13.0+ plugin support required). - OpenAI API Key: You need a valid OpenAI API key for generating AI content.
- Launch the application via Maven or your IDE.
- Select your desired target Platform (e.g., Instagram, LinkedIn).
- Choose the Content Type (e.g., Reels Caption, Post Caption).
- Pick the preferred Tone (e.g., Professional, Casual).
- Enter a brief description or context of the content in the top text area.
- Click Generate Content and wait for the AI to return your customized social media text.
- Use the handy Copy button to copy the output to your clipboard.
- Language: Java 25
- UI Framework: JavaFX
- Build Tool: Maven (maven-compiler-plugin, javafx-maven-plugin)
- JSON Parsing: org.json
- HTTP Client: Native Java
java.net.http.HttpClient - Testing: JUnit 5 (Jupiter API)
This project is licensed under the MIT License