Initial commit with translated description
This commit is contained in:
284
QUICK_START.md
Normal file
284
QUICK_START.md
Normal file
@@ -0,0 +1,284 @@
|
||||
# Postiz CLI - Quick Start Guide
|
||||
|
||||
## Installation
|
||||
|
||||
### From Source (Development)
|
||||
|
||||
```bash
|
||||
# Navigate to the monorepo root
|
||||
cd /path/to/gitroom
|
||||
|
||||
# Install dependencies
|
||||
pnpm install
|
||||
|
||||
# Build the CLI
|
||||
pnpm run build:cli
|
||||
|
||||
# Test locally
|
||||
node apps/cli/dist/index.js --help
|
||||
```
|
||||
|
||||
### Global Installation (Development)
|
||||
|
||||
```bash
|
||||
# From the CLI directory
|
||||
cd apps/cli
|
||||
|
||||
# Link globally
|
||||
pnpm link --global
|
||||
|
||||
# Now you can use 'postiz' anywhere
|
||||
postiz --help
|
||||
```
|
||||
|
||||
### From npm (Coming Soon)
|
||||
|
||||
```bash
|
||||
# Once published
|
||||
npm install -g postiz
|
||||
|
||||
# Or with pnpm
|
||||
pnpm add -g postiz
|
||||
```
|
||||
|
||||
## Setup
|
||||
|
||||
### 1. Get Your API Key
|
||||
|
||||
1. Log in to your Postiz account at https://postiz.com
|
||||
2. Navigate to Settings → API Keys
|
||||
3. Generate a new API key
|
||||
|
||||
### 2. Set Environment Variable
|
||||
|
||||
```bash
|
||||
# Bash/Zsh
|
||||
export POSTIZ_API_KEY=your_api_key_here
|
||||
|
||||
# Fish
|
||||
set -x POSTIZ_API_KEY your_api_key_here
|
||||
|
||||
# PowerShell
|
||||
$env:POSTIZ_API_KEY="your_api_key_here"
|
||||
```
|
||||
|
||||
To make it permanent, add it to your shell profile:
|
||||
|
||||
```bash
|
||||
# ~/.bashrc or ~/.zshrc
|
||||
echo 'export POSTIZ_API_KEY=your_api_key_here' >> ~/.bashrc
|
||||
source ~/.bashrc
|
||||
```
|
||||
|
||||
### 3. Verify Installation
|
||||
|
||||
```bash
|
||||
postiz --help
|
||||
```
|
||||
|
||||
## Basic Commands
|
||||
|
||||
### Create a Post
|
||||
|
||||
```bash
|
||||
# Simple post
|
||||
postiz posts:create -c "Hello World!" -i "twitter-123"
|
||||
|
||||
# Post with multiple images
|
||||
postiz posts:create \
|
||||
-c "Check these out!" \
|
||||
-m "img1.jpg,img2.jpg" \
|
||||
-i "twitter-123"
|
||||
|
||||
# Post with comments (each can have different media!)
|
||||
postiz posts:create \
|
||||
-c "Main post" -m "main.jpg" \
|
||||
-c "First comment" -m "comment1.jpg" \
|
||||
-c "Second comment" -m "comment2.jpg" \
|
||||
-i "twitter-123"
|
||||
|
||||
# Scheduled post
|
||||
postiz posts:create \
|
||||
-c "Future post" \
|
||||
-s "2024-12-31T12:00:00Z" \
|
||||
-i "twitter-123"
|
||||
```
|
||||
|
||||
### List Posts
|
||||
|
||||
```bash
|
||||
# List all posts
|
||||
postiz posts:list
|
||||
|
||||
# With pagination
|
||||
postiz posts:list -p 2 -l 20
|
||||
|
||||
# Search
|
||||
postiz posts:list -s "keyword"
|
||||
```
|
||||
|
||||
### Delete a Post
|
||||
|
||||
```bash
|
||||
postiz posts:delete abc123xyz
|
||||
```
|
||||
|
||||
### List Integrations
|
||||
|
||||
```bash
|
||||
postiz integrations:list
|
||||
```
|
||||
|
||||
### Upload Media
|
||||
|
||||
```bash
|
||||
postiz upload ./path/to/image.png
|
||||
```
|
||||
|
||||
## Common Workflows
|
||||
|
||||
### 1. Check What's Connected
|
||||
|
||||
```bash
|
||||
# See all your connected social media accounts
|
||||
postiz integrations:list
|
||||
```
|
||||
|
||||
The output will show integration IDs like:
|
||||
```json
|
||||
[
|
||||
{ "id": "twitter-123", "provider": "twitter" },
|
||||
{ "id": "linkedin-456", "provider": "linkedin" }
|
||||
]
|
||||
```
|
||||
|
||||
### 2. Create Multi-Platform Post
|
||||
|
||||
```bash
|
||||
# Use the integration IDs from step 1
|
||||
postiz posts:create \
|
||||
-c "Posting to multiple platforms!" \
|
||||
-i "twitter-123,linkedin-456,facebook-789"
|
||||
```
|
||||
|
||||
### 3. Schedule Multiple Posts
|
||||
|
||||
```bash
|
||||
# Morning post
|
||||
postiz posts:create -c "Good morning!" -s "2024-01-15T09:00:00Z"
|
||||
|
||||
# Afternoon post
|
||||
postiz posts:create -c "Lunch time update!" -s "2024-01-15T12:00:00Z"
|
||||
|
||||
# Evening post
|
||||
postiz posts:create -c "Good night!" -s "2024-01-15T20:00:00Z"
|
||||
```
|
||||
|
||||
### 4. Upload and Post Image
|
||||
|
||||
```bash
|
||||
# First upload the image
|
||||
postiz upload ./my-image.png
|
||||
|
||||
# Copy the URL from the response, then create post
|
||||
postiz posts:create -c "Check out this image!" --image "url-from-upload"
|
||||
```
|
||||
|
||||
## Tips & Tricks
|
||||
|
||||
### Using with jq for JSON Parsing
|
||||
|
||||
```bash
|
||||
# Get just the post IDs
|
||||
postiz posts:list | jq '.[] | .id'
|
||||
|
||||
# Get integration names
|
||||
postiz integrations:list | jq '.[] | .provider'
|
||||
```
|
||||
|
||||
### Script Automation
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
# Create a batch of posts
|
||||
|
||||
for hour in 09 12 15 18; do
|
||||
postiz posts:create \
|
||||
-c "Automated post at ${hour}:00" \
|
||||
-s "2024-01-15T${hour}:00:00Z"
|
||||
echo "Created post for ${hour}:00"
|
||||
done
|
||||
```
|
||||
|
||||
### Environment Variables
|
||||
|
||||
```bash
|
||||
# Custom API endpoint (for self-hosted)
|
||||
export POSTIZ_API_URL=https://your-instance.com
|
||||
|
||||
# Use the CLI with custom endpoint
|
||||
postiz posts:list
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### API Key Not Set
|
||||
|
||||
```
|
||||
❌ Error: POSTIZ_API_KEY environment variable is required
|
||||
```
|
||||
|
||||
**Solution:** Set the environment variable:
|
||||
```bash
|
||||
export POSTIZ_API_KEY=your_key
|
||||
```
|
||||
|
||||
### Command Not Found
|
||||
|
||||
```
|
||||
postiz: command not found
|
||||
```
|
||||
|
||||
**Solution:** Either:
|
||||
1. Use the full path: `node apps/cli/dist/index.js`
|
||||
2. Link globally: `cd apps/cli && pnpm link --global`
|
||||
3. Add to PATH: `export PATH=$PATH:/path/to/apps/cli/dist`
|
||||
|
||||
### API Errors
|
||||
|
||||
```
|
||||
❌ API Error (401): Unauthorized
|
||||
```
|
||||
|
||||
**Solution:** Check your API key is valid and has proper permissions.
|
||||
|
||||
```
|
||||
❌ API Error (404): Not Found
|
||||
```
|
||||
|
||||
**Solution:** Verify the post ID exists when deleting.
|
||||
|
||||
## Getting Help
|
||||
|
||||
```bash
|
||||
# General help
|
||||
postiz --help
|
||||
|
||||
# Command-specific help
|
||||
postiz posts:create --help
|
||||
postiz posts:list --help
|
||||
postiz posts:delete --help
|
||||
```
|
||||
|
||||
## Next Steps
|
||||
|
||||
- Read the full [README.md](./README.md) for detailed documentation
|
||||
- Check [SKILL.md](./SKILL.md) for AI agent integration patterns
|
||||
- See [examples/](./examples/) for more usage examples
|
||||
|
||||
## Links
|
||||
|
||||
- [Postiz Website](https://postiz.com)
|
||||
- [API Documentation](https://postiz.com/api-docs)
|
||||
- [GitHub Repository](https://github.com/gitroomhq/postiz-app)
|
||||
- [Report Issues](https://github.com/gitroomhq/postiz-app/issues)
|
||||
Reference in New Issue
Block a user