summaly

Version, currently main branch1 version
  • main branchlatestJun 29, 2025

github.com/ktncode/summaly.cr

A Crystal implementation of Summaly for high-performance web page summarization

1 stars
0 dependents
License: MPL-2.0

Installation

# Add this to your shard.yml
dependencies:
  summaly:
    github: ktncode/summaly.cr
    branch: main

main is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
1.7.3
License
MPL-2.0
Author
Kotone
Target
  • summaly from src/main.cr

Dependencies

Runtime Dependencies

  • kemal~> 1.4.0github: kemalcr/kemal
  • myhtml~> 1.5.2github: kostya/myhtml

README

Summaly.cr

Fast web page metadata extraction service written in Crystal, based on Summaly.

Installation

git clone https://github.com/ktncode/summaly.cr.git
cd summaly.cr
shards install
make build

Configuration

Create config.json:

{
  "bind_addr": "0.0.0.0:3000",
  "timeout": 10000,
  "user_agent": "Summaly.cr/1.0 (+https://github.com/ktncode/summaly.cr)",
  "max_size": 5242880,
  "proxy": null,
  "media_proxy": null,
  "append_headers": []
}

Usage

export SUMMALY_CONFIG_PATH=./config.json
./bin/summaly

API

curl "http://localhost:3000/?url=https://example.com"

Parameters:

  • url (required): Target URL
  • lang: Accept-Language header
  • userAgent: Custom User-Agent
  • responseTimeout: Timeout in milliseconds
  • contentLengthLimit: Max content size in bytes

License

Mozilla Public License 2.0

Author

Kotone git@ktn.works