All Projects → josephwilk → functions-as-patterns

josephwilk / functions-as-patterns

Licence: other
Exploring patterns as a means of understanding and documenting functions.

Programming Languages

clojure
4091 projects
HTML
75241 projects

Projects that are alternatives of or similar to functions-as-patterns

mongoose-to-swagger
Conversion library for transforming Mongoose schema objects into Swagger schema definitions.
Stars: ✭ 50 (+8.7%)
Mutual labels:  documentation-tool
Publish.jl
A universal document authoring package for Julia.
Stars: ✭ 86 (+86.96%)
Mutual labels:  documentation-tool
badge-generator
Magically generate Markdown badges for your docs 🛡️ 🦡 🧙
Stars: ✭ 104 (+126.09%)
Mutual labels:  documentation-tool
hdoc
The modern documentation tool for C++.
Stars: ✭ 165 (+258.7%)
Mutual labels:  documentation-tool
ocular
A documentation generator for our OSS frameworks
Stars: ✭ 42 (-8.7%)
Mutual labels:  documentation-tool
live-documenter
.NET documentation generator and live reader. Generate documentation from .NET code and xml comments, fast, quick and easy.
Stars: ✭ 64 (+39.13%)
Mutual labels:  documentation-tool
buuk
A simple markdown based documentation generator.
Stars: ✭ 23 (-50%)
Mutual labels:  documentation-tool
presidium
Presidium user documentation
Stars: ✭ 25 (-45.65%)
Mutual labels:  documentation-tool
coverxygen
Generate doxygen's documentation coverage report
Stars: ✭ 30 (-34.78%)
Mutual labels:  documentation-tool
newdoc
The newdoc tool generates files formatted with AsciiDoc, which are used in Red Hat documentation.
Stars: ✭ 14 (-69.57%)
Mutual labels:  documentation-tool
openapi-ui
React based OpenAPI 3.0+ documentation generator
Stars: ✭ 32 (-30.43%)
Mutual labels:  documentation-tool
metadoc.js
Generates JSON metadata for Object Oriented JavaScript libraries. Used as a source for generating documentation.
Stars: ✭ 20 (-56.52%)
Mutual labels:  documentation-tool
grav-theme-learn2
Learn2 Grav Theme
Stars: ✭ 80 (+73.91%)
Mutual labels:  documentation-tool
cutedoc
Generate stunning documentation for any project using simple markdown files.
Stars: ✭ 16 (-65.22%)
Mutual labels:  documentation-tool
hapic
Input/Output/Error management for your python controllers with Swagger doc generation
Stars: ✭ 18 (-60.87%)
Mutual labels:  documentation-tool
clausejs
Write contract once. Get data & function validators & conformers, an accurate & readable project contract, auto-generated API documentation, generative test coverage, plus more. A tool that enables a more predictable workflow for developing your JavaScript projects.
Stars: ✭ 29 (-36.96%)
Mutual labels:  documentation-tool
ank
ΛNK: Compile time docs verification and evaluation for Kotlin and Java (Temporarily moved to Arrow-kt)
Stars: ✭ 52 (+13.04%)
Mutual labels:  documentation-tool
hydracodegenerator
Generate Hydra code randomly. Livecode it
Stars: ✭ 22 (-52.17%)
Mutual labels:  visuals
tygen
Modern documentation generator for TypeScript built with ReactJS
Stars: ✭ 23 (-50%)
Mutual labels:  documentation-tool
docscii
DocBook to AsciiDoc converter
Stars: ✭ 14 (-69.57%)
Mutual labels:  documentation-tool

Functions as patterns 🌈

Exploring patterns as a means of understanding and documenting functions.

Inspired by the work of Alex McLean (@yaxu) using visual patterns to explain the live coding language Tidal: Tidal Pattern Language for Live Coding of Music

Install:

Add to your project.clj file:

[functions-as-patterns "0.1.0-SNAPSHOT"]

Example:

(require 'functions-as-patterns.core :refer :all)

(view-as-colors 
  (partition 3 (range 10)))

(view-as-colors
  (partition-all 3 (range 10))))

(partition 3 Argument)

;;=> Result

(partition-all 3 Argument)

;;=> Result

Api:

;;Render to file, assume arguments are colors
(render "/tmp/" (partition 2 (hues 10)))

;;Render to file, convert arguments to colors
(render-as-colors "/tmp/" (partition 2 (range 10)))

;;Render assuming arguments are colors
(view (partition 2 (hues 10)))

;;Render mapping arguments to colors
(view-as-colors (partition 2 (range 10)))

License

Copyright © 2017-present Joseph Wilk

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.

For full license information, see the LICENSE file.

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].