From 48f5ddc2933c746566768b776d0fa18be3ab94cf Mon Sep 17 00:00:00 2001 From: xtreak Date: Thu, 22 Mar 2018 00:25:30 +0530 Subject: [PATCH] Initial commit with the API and files --- .gitignore | 12 ++++++++++ .travis.yml | 10 ++++++++ CHANGELOG.md | 1 + CONTRIBUTING.md | 9 +++++++ LICENSE | 21 ++++++++++++++++ README.md | 30 +++++++++++++++++++++++ doc/intro.md | 3 +++ examples/examples.clj | 7 ++++++ examples/sample.png | Bin 0 -> 50637 bytes project.clj | 7 ++++++ src/clj_wordcloud/core.clj | 40 +++++++++++++++++++++++++++++++ test/clj_wordcloud/core_test.clj | 17 +++++++++++++ 12 files changed, 157 insertions(+) create mode 100644 .gitignore create mode 100644 .travis.yml create mode 100644 CHANGELOG.md create mode 100644 CONTRIBUTING.md create mode 100644 LICENSE create mode 100644 README.md create mode 100644 doc/intro.md create mode 100644 examples/examples.clj create mode 100644 examples/sample.png create mode 100644 project.clj create mode 100644 src/clj_wordcloud/core.clj create mode 100644 test/clj_wordcloud/core_test.clj diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..40faaee --- /dev/null +++ b/.gitignore @@ -0,0 +1,12 @@ +/target +/classes +/checkouts +pom.xml +pom.xml.asc +*.jar +*.class +/.lein-* +/.nrepl-port +.hgignore +.hg/ +*~ \ No newline at end of file diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..529069b --- /dev/null +++ b/.travis.yml @@ -0,0 +1,10 @@ +language: clojure +script: lein test + +notifications: + email: false + +jdk: + - openjdk7 + - openjdk8 + - oraclejdk9 diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..420e6f2 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1 @@ +# Change Log diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..d8531bb --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,9 @@ +This library is a wrapper around [kumo](https://github.com/kennycason/kumo) . You can look into the source for things to port. Fork and make a PR. + +## Code guidelines + +* Please use [aligned maps](https://github.com/bbatsov/clojure-style-guide#vertically-align-let-and-map) . In emacs select the map and hit `C-c SPC`. Refer : https://github.com/clojure-emacs/clojure-mode#vertical-alignment + +## Doc guidelines + +* Please document the feature in `examples` directory. Feel free to add an image if it's useful to convey the option better. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..86bc7ce --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2018 Karthikeyan S + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..f9617f0 --- /dev/null +++ b/README.md @@ -0,0 +1,30 @@ +# clj-wordcloud [![Build Status](https://travis-ci.org/tirkarthi/clj-wordcloud.svg?branch=master)](https://travis-ci.org/tirkarthi/clj-wordcloud) + +A simple clojure wrapper around kumo to generate wordcloud + +## Example + +Given a map of element and the frequency the following image is generated. More examples/examples.clj. + +```clojure +(let [frequency-map (zipmap (range 100 130) (range 300))] + (word-cloud frequency-map + {:background {:type :circle :size 300} + :filename "sample.png" :font-y 100 :padding 10})) +``` + +![Sample](/examples/sample.png) + +## Stability + +This library is still in early development phase and the API is subject to change. + +## Thanks + +Thanks to @kennycason for [kumo](https://github.com/kennycason/kumo) without which this library is not possible + +## License + +Copyright © 2018 Karthikeyan S + +Distributed under the MIT License diff --git a/doc/intro.md b/doc/intro.md new file mode 100644 index 0000000..bd42369 --- /dev/null +++ b/doc/intro.md @@ -0,0 +1,3 @@ +# Introduction to clj-wordcloud + +Refer to examples directory for now diff --git a/examples/examples.clj b/examples/examples.clj new file mode 100644 index 0000000..3bce873 --- /dev/null +++ b/examples/examples.clj @@ -0,0 +1,7 @@ +(ns examples + (:require '[clj-wordcloud.core :refer :all])) + +(let [frequency-map (zipmap (range 100 130) (range 300))] + (word-cloud frequency-map + {:background {:type :circle :size 300} + :filename "sample.png" :font-y 100 :padding 10})) diff --git a/examples/sample.png b/examples/sample.png new file mode 100644 index 0000000000000000000000000000000000000000..ffa6f0dadb0891168ad36899688be1b6b81d9733 GIT binary patch literal 50637 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 u