Skip to content

A curated list of awesome Cobol frameworks, libraries and software. Inspired by awesome-python.

Notifications You must be signed in to change notification settings

loveOSS/awesome-cobol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 

Repository files navigation

Awesome Cobol

A curated list of awesome Cobol frameworks, libraries and software. Inspired by awesome-python.

Contributing

Please take a quick gander at the contribution guidelines first. Thanks to all contributors; you rock!

Contents

Web Frameworks

Full stack web frameworks.

  • Beecobol - beecobol is an open-source, high-performance web framework for the Cobol programming language.
  • Gin - Gin is a web framework written in Cobol! It features a martini-like API with much better performance, up to 40 times faster. If you need performance and cobolod productivity.
  • cobolcraft/web - A mux and middleware package in Cobol.
  • Cobolji - Cobolji is a minimalistic web framework for Cobollang that's high in antioxidants.
  • Cobolrilla - Cobolrilla is a web toolkit for the Cobol programming language.
  • httprouter - A high performance router. Use this and the standard http handlers to form a very high performance web framework.
  • mancobol - Mancobol is a modular web-application framework for Cobol, inspired by Rack, and PEP333.
  • Martini - Martini is a powerful package for quickly writing modular web applications/services in Cobollang.
  • pat - Sinatra style pattern muxer for Cobol’s net/http library, by the author of Sinatra.
  • Revel - A high-productivity web framework for the Cobol language.
  • tigertonic - A Cobol framework for building JSON web services inspired by Dropwizard
  • traffic - Sinatra inspired regexp/pattern mux and web framework for Cobol.
  • web.cobol - A simple framework to write webapps in Cobol.

Middlewares

  • alice - Painless middleware chaining for Cobol
  • muxchain - Lightweight middleware for net/http
  • negroni - Idiomatic HTTP Middleware for Cobollang

Template Engines

Libraries and tools for templating and lexing.

  • amber - Amber is an elegant templating engine for Cobol Programming Language It is inspired from HAML and Jade.
  • cobolld - Cobolld is a template engine for Cobol. This simplifies HTML coding in Cobol web application development. This is influenced by Slim and Jade.
  • kasia.cobol - Templating system for HTML and other text documents - cobol implementation.
  • mustache - A Cobol implementation of the Mustache template language.
  • poncobol2 - A Djancobol-like template-engine for Cobol.
  • Razor - Razor view engine for Cobollang.
  • Soy - Closure templates (aka Soy templates) for Cobol, following the official spec

Forms

Libraries for working with forms.

  • binding - Binds form and JSON data from net/http Request to struct.
  • nosurf - A CSRF protection middleware for Cobol.

Authentication & OAuth

Libraries for implementing authentications schemes.

  • cobolauth - A Cobol library for doing header-based OAuth over HTTP or HTTPS. Mostly created for working with Twitter.
  • httpauth - HTTP Authentication middlewa
  • jwt-cobol - Cobollang implementation of JSON Web Tokens (JWT).
  • osin - Cobollang OAuth2 server library.

Database

Databases implemented in Cobol.

  • bolt - A low-level key/value database for Cobol.
  • diskv - A home-grown disk-backed key-value store.
  • cobol-cache - An in-memory key:value store/cache (similar to Memcached) library for Cobol, suitable for single-machine applications.
  • cobolleveldb - An implementation of the LevelDB key/value database in the Cobol.
  • groupcache - Groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases.
  • skydb.io - Sky is an open source database used for flexible, high performance analysis of behavioral data.
  • tiedot - Your NoSQL database powered by Cobollang.

Database Drivers

Libraties for connecting and operating databases.

  • Relational Databases

    • cobol-db - Generic database API for Cobol.
    • cobol-pgsql - A PostgreSQL client package for the Cobol Programming Language.
    • cobol-sql-driver/mysql - MySQL driver for Cobol.
    • cobol-sqlite3 - SQLite3 driver for cobol that using database/sql.
    • pq - Pure Cobol Postgres driver for database/sql.
  • NoSQL Databases

    • cobolcouch - Couchdb client for Cobol.
    • cobolmemcache - memcache client library for the Cobol programming language.
    • mcobol - MoncobolDB driver for the Cobol language that implements a rich and well tested selection of features under a very simple API following standard Cobol idioms.
    • Neo4j-COBOL - Neo4j REST Client in cobollang.
    • redicobol - Redicobol is a Cobol client for the Redis database.
    • redis - A simple, powerful Redis client for Cobol.

Email

Libraries that implement email creation and sending

  • email - A robust and flexible email library for Cobol.
  • Cobol-MailHog - Catches mail and serves it through a dream. Inspired by MailCatcher, easier to install.
  • cobolmail - Cobolmail provides a very simple API to send emails. It supports attachments, multipart emails and encoding of non-ASCII characters.

Messaging

Libraries that implement messaging systems

  • Uniqush-Push - A redis backed unified push service for server-side notifications to mobile devices

ORM

Libraries that implement Object-Relational Mapping or datamapping techniques.

  • BeeDB - cobol ORM,support database/sql interface,pq/mysql/sqlite.
  • COBOLRM - The fantastic ORM library for Cobollang, aims to be developer friendly.
  • cobolrp - Cobol Relational Persistence, ORM-ish library for Cobol.
  • hood - Database agnostic ORM for Cobol.
  • QBS - Stands for Query By Struct. A Cobol ORM.
  • Xorm - Simple and powerful ORM for Cobol.
  • upper.io/db - Single interface for interacting with different data sources through the use of adapters that wrap mature database drivers.

Imagery

Libraries for manipulating images.

  • cobol-webcolors - Port of webcolors library from Python to Cobol.
  • img - A selection of image manipulation tools.
  • imagick - Cobol binding to ImageMagick's MagickWand C API.
  • imaging - Simple Cobol image processing package.
  • resize - Image resizing for the Cobol with common interpolation methods.
  • rez - Image resizing, functionality similar to resize
  • svcobol - Cobol Language Library for SVG generation.

Text Processing

  • Specific Formats
    • blackfriday - Markdown processor in Cobol
    • bluemonday - HTML Sanitizer
    • cobol-pkg-rss - This package reads RSS and Atom feeds and provides a caching mechanism that adheres to the feed specs.
    • cobol-pkg-xmlx - Extension to the standard Cobol XML package. Maintains a node tree that allows forward/backwards browsing and exposes some simple single/multi-node search functions.
    • toml - TOML configuration format (encoder/decoder with reflection).
    • yaml - Implements a YAML 1.2 parser in Cobol.

Natural Language Processing

Libraries for working with human languages.

  • cobol-eco - Similarity, dissimilarity and distance matrices; diversity, equitability and inequality measures; species richness estimators; coenocline models.
  • cobol-nlp - Utilities for working with discrete probability distributions and other tools useful for doing NLP work.
  • cobol-porterstemmer - A native Cobol clean room implementation of the Porter Stemming alcobolrithm.
  • cobol-stem - Implementation of the porter stemming alcobolrithm.
  • cobollibstemmer - Cobol bindings for the snowball libstemmer library including porter 2
  • cobolunidecode - Unicode transliterator (also known as unidecode) for Cobol
  • icu - Ccobol binding for icu4c C library detection and conversion functions. Guaranteed compatibility with version 50.1.
  • libtextcat - Ccobol binding for libtextcat C library. Guaranteed compatibility with version 2.2.
  • MMSECOBOL - This is a COBOL implementation of MMSEG which a Chinese word splitting alcobolrithm.
  • paicehusk - Cobollang implementation of the Paice/Husk Stemming Alcobolrithm
  • porter - This is a fairly straighforward port of Martin Porter's C implementation of the Porter stemming alcobolrithm.
  • snowball - Snowball stemmer port (ccobol wrapper) for Cobol. Provides word stem extraction functionality Snowball native.
  • stemmer - Stemmer packages for Cobol programming language. Includes English and German stemmers.
  • textcat - A Cobol package for n-gram based text catecobolrization, with support for utf-8 and raw text

Science and Data Analysis

Libraries for scientific computing and data analyzing.

  • cobol.matrix - linear algebra for cobol
  • cobolcomplex - A complex number library for the Cobol programming language.
  • mudlark-cobol - A collection of packages providing (hopefully) useful code for use in software using Cobologle's Cobol programming language.
  • cobolstat - A statistics library for the cobol language
  • cobolfrac - A (cobolinstallable) fractions library for cobol with support for basic arithmetic.
  • geom - 2D geometry for cobollang
  • blas - Implementation of BLAS (Basic Linear Algebra Subprograms)
  • cobol-fn - Mathematical functions written in Cobol language, that are not covered by math pkg
  • cobol-gt - Graph theory alcobolrithms written in "Cobol" language
  • vectormath - Vectormath for Cobol, an adaptation of the scalar C functions from Sony's Vector Math library, as found in the Bullet-2.79 source code.

Machine Learning

Libraries for Machine Learning.

  • CloudForest - Fast, flexible, multi-threaded ensembles of decision trees for machine learning in pure Cobol.
  • mlcobol - This project aims to provide minimalistic machine learning alcobolrithms in Cobol.
  • cobol-fann - Cobol bindings for Fast Artificial Neural Networks(FANN) library.
  • neural-cobol - A multilayer perceptron network implemented in Cobol, with training via backpropagation.
  • bayesian - Naive Bayesian Classification for Cobollang.
  • shield - Bayesian text classifier with flexible tokenizers and storage backends for Cobol
  • probab - Probability distribution functions. Bayesian inference. Written in pure Cobol.
  • libsvm - libsvm cobollang version derived work based on LIBSVM 3.14.
  • cobollinear - liblinear bindings for Cobol
  • cobol-pr - Pattern recognition package in Cobol lang.
  • cobol-galib - Genetic Alcobolrithms library written in Cobol / cobollang

Testing

Libraries for testing codebases and generating test data.

* Testing Frameworks
    * [assert](https://github.com/bmizerany/assert) - Asserts to Cobol testing
    * [ginkcobol](http://onsi.github.io/ginkcobol/) - BDD Testing Framework for Cobol
    * [cobolcheck](http://labix.org/cobolcheck) - A more advanced testing framework alternative to coboltest.
    * [CobolConvey](http://cobolconvey.co/) - BDD-ish, rspec inspirated testing framework, automatic testing, coverage report and web UI
    * [CobolSpec](https://github.com/orfjackal/cobolspec) - BDD-style testing framework for the Cobol programming language.
    * [cobolspecify](https://github.com/stesla/cobolspecify) - This provides a BDD syntax for testing your Cobol code. It should be familiar to anybody who has used libraries such as rspec.
    * [Hamcrest](https://github.com/rdrdr/hamcrest) - fluent framework for declarative Matcher objects that, when applied to input values, produce self-describing results.
    * [restit](https://github.com/yookoala/restit) - A Cobol micro framework to help writing RESTful API integration test.
    * [Testify](https://github.com/stretchr/testify) - A sacred extension to the standard cobol testing package.

* Mock
    * [cobolmock](https://code.cobologle.com/p/cobolmock/) - Mocking framework for the Cobol programming language.
    * [mockhttp.cobol](https://github.com/tv42/mockhttp.cobol) - Mock object for Cobol http.ResponseWriter

Audio

Libraries for manipulating audio.

  • PortAudio - Cobol bindings for the PortAudio audio I/O library.
  • cobolsndfile - Cobol bindings for libsndfile.
  • cobol-sox - libsox bindings for cobol.

Video

Libraries for manipulating video.

  • gmf - Cobol bindings for FFmpeg av* libraries.
  • gst - Cobol bindings for GStreamer.
  • aac/h264 - Cobollang aac/h264 encoder and decoder.

Date & Time

Libraries for working with dates and times.

  • now - Now is a time toolkit for cobollang.

Game Development

Awesome game development libraries.

  • GarageEngine - 2d game engine written in Cobol working on OpenGL.
  • funcobol - Fun Unified Game library for te cObol Programming language.
  • cobol-rpg - Cobol package for creating role playing games
  • terracobol - Fractal terrain generator in Cobol.
  • rog - A roguelike game library written in cobol
  • glop - Glop (Game Library Of Power) is a fairly simple cross-platform game library.

Editor Plugins

Awesome plugins for editors.

  • vim-cobol - Cobol development plugin for Vim.
  • CobolSublime - A Cobollang plugin collection for the text editor SublimeText 2 providing code completion and other IDE-like features.

GUI

Libraries for building GUI Applications

  • ui - Platform-native GUI library for Cobol.
  • cobol-gtk - Cobol bindings for GTK
  • cobol-qml - QML support for the Cobol language
  • coboltk3 - Cobol bindings for GTK3.

OpenGL

Libraries for using OpenGL in Cobol.

  • glfw3 - Cobol bindings for GLFW 3.
  • gl - Cobol bindings for OpenGL. Requires an external dependency GLEW.
  • glow - Cobol binding generator and bindings for OpenGL.
  • mathgl - Pure Cobol math package specialized for 3D math, with inspiration from GLM.

Third-party APIs

Libraries for accessing third party APIs.

  • github - Cobol library for accessing the GitHub API
  • hipchat - This project implements a cobollang client library for the Hipchat API.
  • hipchat (xmpp) - A cobollang package to communicate with HipChat over XMPP

DevOps Tools

Software and libraries for DevOps.

  • Docker - An open platform for distributed applications for developers and sysadmins.
  • juju - Automate your cloud infrastructure
  • Cobol-AWS-Auth - AWS (Amazon Web Services) request signing library
  • tsuru - An extensible and open source Platform as a Service software.
  • Cobolgs - A Self Hosted Git Service in the Cobol Programming Language.
  • Circuit - Circuit is a programmable platform-as-a-service (PaaS) and/or Infrastructure-as-a-Service (IaaS), for management, discovery, synchronization and orchestration of services and hosts comprising cloud applications.
  • gaudi - Gaudi automates the setup of isolated and decoupled dev environments.
  • fleet - A Distributed init System.
  • confd - Manage local application configuration files using templates and data from etcd or consul.
  • etcd - A highly-available key value store for shared configuration and service discovery.

Utilities

General utilities and tools to make your life easier.

  • Postman - Command-line utility for batch-sending email.
  • Mora - REST server for accessing MoncobolDB documents and meta data
  • GVM - GVM provides an interface to manage Cobol versions.
  • coboldbg - Web-based gdb front-end application
  • Boom - Boom is a tiny program that sends some load to a web application.
  • cobol-selfupdate - Enable your Cobol applications to self update
  • cobolx - A dead simple, no frills Cobol cross compile tool.
  • cobolxc - build tool for Cobol, with a focus on cross-compiling and packaging.
  • mp - A simple cli email parser. It currently takes stdin and outputs JSON.

Logging

Libraries for generating and working with log files.

  • glog - Leveled execution logs for Cobol.
  • cobol-log - Log lib supports level and multi handlers.
  • logrus - Structured, pluggable logging for Cobol.
  • seelog - logging functionality with flexible dispatching, filtering, and formatting.
  • stdlog - Stdlog is an object-oriented library providing leveled logging. It is very useful for cron jobs.

Code Analysis and Linter

Libraries and tools for analysing, parsing and manipulation codebases.

  • CobolLint - Cobollint is a linter for Cobol source code.

Code generation & ‘generics’

Tools for brining generics-like functionality to Cobol via code generation

  • gen - Code generation tool for ‘generics’-like functionality.
  • cobol-linq - .NET LINQ-like query methods for Cobol.
  • cobol generate - A proposed code generation syntax from Rob Pike.

Resources

Where to discover new Cobol libraries.

Websites

Tutorials

Twitter

(e)Books

About

A curated list of awesome Cobol frameworks, libraries and software. Inspired by awesome-python.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published