All Projects → liderman → text-generator

liderman / text-generator

Licence: MIT license
Golang text generator for generate SEO texts

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to text-generator

php-text-generator
Fast SEO text generator on a mask.
Stars: ✭ 19 (+5.56%)
Mutual labels:  seo, text-generation, seo-optimization, textpattern, text-generator
SEO-Manager-Electron
Generates SEO Report Easily
Stars: ✭ 24 (+33.33%)
Mutual labels:  seo, seo-optimization
framework
A stylish PHP application framework crafted using Slim, Twig, Eloquent and Sentinel designed to get you from clone to production in a matter of minutes.
Stars: ✭ 56 (+211.11%)
Mutual labels:  seo, seo-optimization
Google-rank-tracker
SEO: Python script + shell script and cronjob to check ranks on a daily basis
Stars: ✭ 124 (+588.89%)
Mutual labels:  seo, seo-optimization
Silverstripe-SEO
A SilverStripe module to optimise the Meta, crawling, indexing, and sharing of your website content
Stars: ✭ 41 (+127.78%)
Mutual labels:  seo, seo-optimization
people-also-ask
People also ask Google scraper. Get as many questions as you need to optimize your site for voice or new content ideas or answering questions about your desired topic.
Stars: ✭ 39 (+116.67%)
Mutual labels:  seo, seo-optimization
ecommercetools
EcommerceTools is a Python data science toolkit for ecommerce, marketing science, and technical SEO analysis and modelling and was created by Matt Clarke.
Stars: ✭ 41 (+127.78%)
Mutual labels:  seo, seo-optimization
silverstripe-seo
An all-in-one SEO module for SilverStripe 4.1+
Stars: ✭ 35 (+94.44%)
Mutual labels:  seo, seo-optimization
Cancerify
Turn an innocent text into torturous hell
Stars: ✭ 44 (+144.44%)
Mutual labels:  text, text-generation
SeoTags
SeoTags create all SEO tags you need such as meta, link, twitter card (twitter:), open graph (og:), and JSON-LD schema (structred data).
Stars: ✭ 113 (+527.78%)
Mutual labels:  seo, seo-optimization
markovifyR
Markovify wrapper for R
Stars: ✭ 81 (+350%)
Mutual labels:  text, text-generator
magento2-module-seo
Magento 2 Module for Search Engine Optimization
Stars: ✭ 100 (+455.56%)
Mutual labels:  seo, seo-optimization
pagespeedParseR
pagespeedParseR is an R wrapper for Google Pagespeed Insights API, that also enables convenient parsing
Stars: ✭ 20 (+11.11%)
Mutual labels:  seo, seo-optimization
awesome-search-engine-optimization
A curated list of backlink, social signal opportunities, and link building strategies and tactics to help improve search engine results and ranking.
Stars: ✭ 82 (+355.56%)
Mutual labels:  seo, seo-optimization
seotool
New version of my keyword tracking tool with additional features - works currently for google.de!
Stars: ✭ 52 (+188.89%)
Mutual labels:  seo, seo-optimization
spiderable-middleware
🤖 Prerendering for JavaScript powered websites. Great solution for PWAs (Progressive Web Apps), SPAs (Single Page Applications), and other websites based on top of front-end JavaScript frameworks
Stars: ✭ 29 (+61.11%)
Mutual labels:  seo, seo-optimization
drupal 8 unset html head link
🤖 Module for unset any wrong HTML links (like rel="delete-form", rel="edit-form", etc.) from head on Drupal 8.x websites. This is trust way to grow up position in SERP Google, Yandex, etc.
Stars: ✭ 19 (+5.56%)
Mutual labels:  seo, seo-optimization
poke
A simple tool to check your site for broken links, media, iframes, stylesheets, scripts, forms or metadata.
Stars: ✭ 24 (+33.33%)
Mutual labels:  seo, seo-optimization
Rendora
dynamic server-side rendering using headless Chrome to effortlessly solve the SEO problem for modern javascript websites
Stars: ✭ 1,853 (+10194.44%)
Mutual labels:  seo, seo-optimization
DNZ.SEOChecker
SEO Checker and Recommander Plugin (like wordpress Yoast) for ASP.NET Core.
Stars: ✭ 18 (+0%)
Mutual labels:  seo, seo-optimization

text-generator

Fast text generator on a mask.

Go Report Card codecov Go Reference Release

Written in Golang. I do not use regular expressions and the fastest. I covered tests and simple! Supporting recursive text generation rules.

Installation

go get github.com/liderman/text-generator

Usage

An example of a simple template text generation:

tg := textgenerator.New()
template := "Good {morning|day}!"

fmt.Print(tg.Generate(template))
// Displays: Good morning!

fmt.Print(tg.Generate(template))
// Displays: Good day!

An example of a complex generation template text:

tg := textgenerator.New()
template := "{Good {morning|evening|day}|Goodnight|Hello}, {friend|brother}! {How are you|What's new with you}?"

fmt.Print(tg.Generate(template))
// Displays: Good morning, friend! How are you?

fmt.Print(tg.Generate(template))
// Displays: Good day, brother! What's new with you?

fmt.Print(tg.Generate(template))
// Displays: Hello, friend! How are you?
...

Requirements

  • Need at least go1.14 or newer.

Features

  • Without external dependencies
  • Fast (does not use regular expressions)
  • Simple
  • Supports caching
  • Covered with tests

Documentation

You can read package documentation here.

Testing

Unit-tests:

go test -v -race ./...

Run linter:

docker run --rm -v $(pwd):/app -w /app golangci/golangci-lint:v1.40 golangci-lint run -v

Benchmarks

go test -test.bench . -benchmem -benchtime=10s

The test result on computer MacBook Pro 2020 (Intel Core i5):

goos: darwin
goarch: amd64
pkg: github.com/liderman/text-generator
BenchmarkGenerateEasyText-8             22446540               531 ns/op             200 B/op          8 allocs/op
BenchmarkGenerateComplexText-8           4721838              2552 ns/op            1351 B/op         24 allocs/op
PASS
ok      github.com/liderman/text-generator      27.227s

CONTRIBUTE

  • write code
  • run go fmt ./...
  • run all linters and tests (see above)
  • create a PR describing the changes

LICENSE

MIT

AUTHOR

Konstantin Osipov [email protected]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].