Skip to content

Repository files navigation

campi-cli

campi-cli will connect to many marketing platforms directly; Meta, TikTok and such, so you can manage campaigns as code; reviewable, version controlled and reproducible.

Build

zig build

Development

The dev shell provides zig, clang, and the shared treefmt setup:

just             # list recipes
zig build        # build
just lint        # treefmt lint
just format      # treefmt format

To build and install the binary:

zig build --prefix ~/.local

Roadmap

  • project scaffold
    • devshells
    • justfile
    • docs; quarto
    • branding
    • man pages
    • nix
    • ci
  • schemas
    • config; the base config file
    • manifest; the campaign manifest
  • cli
    • verbosity; debug logs
    • help command; print tool and commands help text
    • version; print the tool version
    • init; scaffold a new project
    • fmt; format manifest files
    • validate; validate the config and manifests
    • state; read and compare the state and lock files
    • config; manage the config file
    • plan; compute what would change
    • apply; apply the changes
    • import; import hand-created campaigns into state
    • platform; fetch the platform marketing API data
      • meta
      • tiktok
      • x
      • google
      • reddit
      • linkedin
  • file handling
    • state reads and compares the state and lock files
    • plan and apply read the campaign manifest
    • init writes the base config file and prepares the working directory
  • tests
    • cli
      • parser
      • runner
      • env
    • platforms
      • meta; payload and schema
      • tiktok; schema
    • artifacts
      • source resolution and caching

Documentation

Project

License

See LICENSE.

About

manage ads everywhere via the terminal

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages