An open API service indexing awesome lists of open source software.

https://github.com/mandilkhadka/linkedin-post-generator

AI-powered Rails app that transforms raw notes into polished, post-ready LinkedIn content with tone, length, hashtag customization and much more features to come.
https://github.com/mandilkhadka/linkedin-post-generator

gemini-api postgresql ruby ruby-on-rails stimulus-js turbo

Last synced: 2 months ago
JSON representation

AI-powered Rails app that transforms raw notes into polished, post-ready LinkedIn content with tone, length, hashtag customization and much more features to come.

Awesome Lists containing this project

README

          


LinkedIn Post Drafting App Banner

# โœ๏ธ LinkedIn Post Drafting App
![Ruby](https://img.shields.io/badge/Ruby-3.1-red?logo=ruby&logoColor=white)
![Rails](https://img.shields.io/badge/Rails-7.0-red?logo=rubyonrails&logoColor=white)
![PostgreSQL](https://img.shields.io/badge/Postgres-Database-blue?logo=postgresql&logoColor=white)
![Gemini](https://img.shields.io/badge/Gemini-API-4285F4?logo=google&logoColor=white)
![License](https://img.shields.io/badge/License-MIT-green)

Turn your messy notes into polished, post-ready LinkedIn content with the power of AI.
Built with **Rails 7 + Gemini API** for makers, founders, and anyone who struggles with
โ€œHow do I start this post?โ€

---

## ๐ŸŒŸ What It Does

- ๐Ÿ“ Paste your raw notes or half-baked ideas.
- ๐ŸŽจ Choose a tone โ†’ Professional, Friendly, Witty, or Inspirational.
- ๐Ÿ“ Pick a length โ†’ Short, Medium, or Long.
- ๐Ÿ”– Let AI sprinkle in relevant hashtags (optional).
- ๐Ÿ“š Save your drafts, refine later, and post with confidence.

---

## ๐Ÿ›  Tech Stack

- **Ruby on Rails 7**
- **PostgreSQL** (storage)
- **Gemini API** (AI magic โœจ)
- **dotenv-rails** (safe secrets)

---

## ๐Ÿš€ Getting Started

### 1๏ธโƒฃ Clone this repo
```bash
git clone https://github.com/your-username/linkedin-post-drafting-app.git
cd linkedin-post-drafting-app
```

### 2๏ธโƒฃ Install dependencies
```bash
bundle install
```

### 3๏ธโƒฃ Configure secrets
```
Create a .env file in the project root:
env
GEMINI_API_KEY=your-gemini-api-key-here
DATABASE_URL=postgres://user:password@localhost:5432/linkedin_dev
โš ๏ธ Never commit your API key to GitHub.
```
### 4๏ธโƒฃ Setup the database
```bash
rails db:create db:migrate
```
### 5๏ธโƒฃ Run the app
```bash
rails server
Then open ๐Ÿ‘‰ http://localhost:3000
```

### ๐ŸŽฌ Demo Flow
```
โœ๏ธ Drop in some quick notes:
"launched new feature, boosted user growth 30%"

๐ŸŽญ Pick your vibe โ†’ Witty
๐Ÿ“ Choose length โ†’ Short
๐Ÿ”ฎ Hit Generate Draft

๐ŸŽ‰ Boom โ†’ โ€œWe just hit a huge milestoneโ€ฆโ€ (AI polishes it up).
```
### ๐Ÿ“‚ Project Anatomy
```
app/models/post.rb โ†’ Notes + AI output storage

app/services/gemini_service.rb โ†’ The brain (calls Gemini API)

app/controllers/posts_controller.rb โ†’ The traffic cop ๐Ÿšฆ

app/views/posts/ โ†’ Simple UI forms + results
```

## ๐Ÿ›ฃ Roadmap
```
- ๐Ÿ›  Refactoring โ†’ Code works, but needs cleanup and optimization
- โณ Async generation with background jobs
- ๐Ÿ”ด Live-stream drafts via ActionCable
- ๐Ÿ” User accounts (multi-user)
- ๐Ÿ“ค One-click publish to LinkedIn
- ๐ŸŽจ Sleeker UI with TailwindCSS
- ๐Ÿ“ฑ Mobile-friendly UI for on-the-go post drafting
- ๐ŸŒ Multi-language support (English, Japanese, more)
- โœ๏ธ Rich text editor with formatting & emoji picker
- ๐Ÿ“Š Post analytics dashboard (views, engagement, performance)
- ๐Ÿค– Smarter hashtag + keyword suggestions
- ๐Ÿ”” Draft reminders & scheduling
- ๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ Team collaboration (share + edit drafts together)
```

---