tiktagus / tiktag

TikTag is a command-line app for preparing images for blogging, sharing or NFT-minting.
BSD 3-Clause "New" or "Revised" License
2 stars 1 forks source link
photo upload

TikTag

TikTag is a command-line app for preparing images for blogging, sharing or NFT-minting.

TikTag is shipped as a local command-line app written in Go. This locally run app provides basic features for hosting and sharing images and files. It will depend on hosted service at tiktag.us to access premium features such as minting your digital assets as NFTs.

Features (v0.x)

Tiktag server offers the following features,

  1. Install and run as a local command line app
  2. Upload and host a photo to your object storage of choice, and get its S3 URI, for publishing or sharing
  3. Configurable params via config.yml, such as,
    • your S3 compatible object storage service of choice, such as your own MinIO instance;
    • how search is configured;
    • how much asset handling logs you want to share with others

Install tiktag

Before you install tiktag, make sure that,

  1. you've got Golang installed on your local environment, typically the Terminal app in MacOS;
  2. you've cd to your asset's directory, where you're going to use tiktag for the job;
> go install github.com/tikoly-com/tiktag@latest
> which tiktag
/path/to/your/bin/tiktag

After you've installed tiktag,

  1. The first time you run tiktag will create a config file for you
> tiktag
The first time you run tiktag, will create a sample config file:
 * Save default config settings to /path/to/your/home/.tiktag/config.yaml, please edit with your own configs then run again.
  1. make sure you checked config.yaml.sample and modified config.yaml in your home tiktag directory, and configure your S3-compatible object storage of choice, such as MinIO,
 minio:
  endpoint: "s3.example.com"
  accessKey: "my_minio_access_key"
  secretKey: "my_minio_secret_key"
  useSSL: true
  bucketName: "my_minio_bucket_name"
  1. Then read the command section to share your own asset.

Command (examples)

  1. Host a photo or file,

    > tiktag myfilename.png
    > Success! Here is your hosted asset's URL,
    > https://s3.tikoly.com/village/563583552944996352.png
  2. Search for a stored file and retrieve it's URL,

    > tiktag find myfilename.png
    > Success! Here is your hosted asset's URL,
    > https://s3.tikoly.com/village/563583552944996352.png

    if your asset not found,

    > Oops...asset not found, or run `tiktag <myfile>` to host it

Design

Tiktag was firstly designed to streamline photo preparation before being hosted and published/referenced in a blog post. We're increasingly seeing Tiktag's potential in NFT-related business applications we're building for our clients world-wide.

We're excited to see where it leads us.

Data objects (key nouns)

List of key data objects in TikTag,

Key verbs

Roadmap

  1. v0.1, Validating the idea and usability, a local command line tool
    • jobs are handled locally by user
    • supports major s3 compatible storage
    • accepts Gtihub Sponsor
  2. v1.x, Hosted version, web GUI and Web3 login (Sui Wallet / testnet, devnet)
    • for tracking assets handling
    • for more non-technical audience
    • better performance

Tech Stack

Candidate tech dependencies for making TikTag happen,

Contributors

Licensing

The 3-Clause BSD License