A collection of awesome Pharo libraries, tools, frameworks and software.
Branch: master
Clone or download
Latest commit 788a290 Feb 22, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Jan 28, 2019
CONTRIBUTION.md Create CONTRIBUTION.md Jan 28, 2019
LICENCE.md Add CC0 licence Jan 28, 2019
README.md add Jun and RMapViewer Feb 22, 2019

README.md

Awesome Pharo Awesome

A categorized community-driven collection of awesome Pharo libraries, tools, frameworks and software.

Algorithms

  • DeepTraverser - Library for traversing object graphs (managing cycles).
  • FuzzySearcher - Simplified implementation of ambiguous matching algorithm based on Baeta-Yates, R.A., Gonnet, G.H., Wu, S. and Manber, U.
  • StableMarriage - A solver for the stable marriage problem written in Pharo.

Books

Code generation

Command line

  • clap-st - Command-line argument parsing for Pharo.
  • Pharo server tools - Tools to deploy and manage headless Pharo servers from the command line.
  • pi - CLI tool to install Pharo Smalltalk packages.

Data interexchange format

  • msgpack-smalltalk - MessagePack serialization library.
  • NeoJSON - Framework to handle JSON in Pharo.
  • Pillar - Markup syntax and associated tools to write and generate documentation, books and slides.
  • SIXX - XML serializer/deserializer.
  • STON - The Smalltalk Object Notation, similar to JSON but for Smalltalk.

Databases

  • P3 - PostgresV3 protocol client for Pharo.
  • PunQLite - UnQLite binding for Pharo Smalltalk.

Graphics

  • Bloc - Next generation low-level UI infratructure and framework for Pharo.
  • Brick - Next generation widget libraries for Pharo. Works on top of Bloc.
  • ConstraintsLayout - A constraints layout for morphic using Cassowary as its backend.
  • GraphViz - Pharo GraphViz binding.
  • Jun - A 3D graphics library with chemoinformatics extensions.
  • Roassal - The agile 2D visualization engine for Pharo.
  • SpecUIAddOns - Add-ons for Spec UI description framework.
  • Woden - A 3D graphics engine for Pharo.

IDE

  • Calypso - Pharo system browser.
  • Glamorous Toolkit - Moldable IDE for Pharo.
  • Mirage - A windows switcher with a previewer for Pharo.
  • Native-Browser - A small project to add the possibility to open native browser via a FileReference.
  • QualityAssistant - A live feedback code quality tool for Pharo.
  • Smalltalk Vim Mode - Vim Mode for Playground, System Browser, Debugger in Pharo.
  • TelePharo - Tools to manage and develop remote Pharo images.

IOT

  • PharoThings - Live programming platform for IoT projects based on Pharo.

Language extensions

  • Talents - Implementation of Talents in Pharo. Allowing us to extend the behaviour in single instances.

Loggers

  • TinyLogger - A really small logger for Pharo applications.

Miscellaneous

  • Dr Geo - A software to design & manipulate interactive geometric sketches. It helps kids to explore geometry.
  • ISO3166 - Codes for the names of countries, dependent territories, and special areas of geographical interest for Pharo applications.
  • Units - A simple package for Units management in Pharo.

Projects management

  • Cruiser - Application packager for Pharo.
  • Filetree - A file-per-method export format of Pharo source code allowing one to version code with git, svn, fosil, etc.
  • Metacello - A package management system for Pharo.
  • pharo-server-tools - Tools to deploy and manage headless Pharo servers from the command line.
  • SmalltalkCI - Framework for testing Smalltalk projects on Linux, macOS, and Windows and on Travis CI, AppVeyor, and GitLab CI/CD.
  • Tonel - A file-per-class export format of Pharo source code allowing one to version code with git, svn, fosil, etc.

Scientific libraries

  • BioSmalltalk - Bioinformatics Library for Pharo Smalltalk.
  • CORMAS - CORMAS (Common-pool Resource and Mutli-Agent Simulation) is a agent based model library in Smalltalk.
  • Dataframe - Tabular data structures for data analysis.
  • GADM - A browseable GADM world tree for Pharo Smalltalk.
  • Geometry - A library for representing basic geometry elements and doing computations with them.
  • Kendrick - Domain-Specific Modeling for Epidemiology.
  • libtensorflow-pharo-bindings - TensorFlow library bindings for Pharo.
  • MatplotLibBridge - A bridge to Python's Matplotlib.
  • Polymath - Set of mathematical tools for Pharo. Similar to numpy in Python.
  • RMapViewer - A Viewer for chemical reaction maps.
  • StNER - Interface to the Stanford Named Entity Recognizer.
  • Territorial - Geographic Information Retrieval Library.
  • Z3950 - ZOOM FFI Client for Z39.50 Protocol.

Software / data analysis

  • CCBC - Code Critics Bar Chart for Pharo Smalltalk.
  • DesignInfo - Collects package metrics (SLOC).
  • Moose - Platform for software and data analysis.
  • PetitParser - Petit Parser is a framework for building parsers using objects.
  • PostgreSQLParser - A parser for PostgreSQL queries and Plpg/SQL source code.

System interaction

  • OSSubprocess - Allows one to spawn Operating System processes from within Pharo language.
  • ProcessWrapper - Plugin + Wrapper code for Windows process execution.

Testing

  • Babymock - A visual mock object library.
  • Hapao - Spy2 is a profiling framework. Spy2 contains Hapao, the visual test coverage tool.
  • Mocketry - Mock objects library with very fluent lightweight API.
  • µ-talk - Mutation Testing in Smalltalk.
  • ParametrizedTests - Extension to SUnit to implement parametrized tests in Pharo.
  • StateSpecs - Assertions library based on should expressions.

Videos

VCS

  • Iceberg - Set of tools to handle git repositories from a Pharo image.

Web

  • ChartJs - Seaside binding of ChartJs to display and interact with charts.
  • MaterialDesignLite - Binding google's Material Design Lite project for Seaside.
  • Parasol - Testing web apps in Smalltalk using Selenium WebDriver.
  • PharoJS - Develop in Pharo, Run on Javascript.
  • PrismCodeDisplayer - Code displayer for Seaside base on Prism.js project.
  • RenoirSt - A DSL enabling programmatic cascading style sheet generation for Pharo Smalltalk.
  • Seaside - Framework to develop sophisticate web applications in Smalltalk.
  • SeasideBootstrap - Binding to Twitter's Bootstrap project for Seaside.
  • Teapot - Micro web framework for Pharo Smalltalk.
  • TelescopeCytoscape - Interactive visualization project for Seaside based on Cytoscape.js.
  • Willow - Web Interaction Library that eases the burden of creating AJAX-based web applications.
  • Zinc - HTTP components to deal with HTTP networking in Smalltalk.