Awesome
Pharo wiki
Wiki for the Pharo programming language and development environment.
The goals of the wiki are explained in the Manifest and contribution guidelines in the Contribution guide.
Looking for a list of awesome projects? Check-out awesome-pharo, a curated list of awesome Pharo projects.
Beginners
- Setting up a new project
- Things beginners must learn
- Interesting things to know for beginners
- How to run Pharo from the command line - How to run pharo from the command line.
- Glossary
General
Infrastructure
- How to deal with baselines - Configure your project and its dependencies.
- Setup your CI through github actions - Setup your CI via GitHub actions for your Pharo projects.
- Pharo code export formats - Explanations about code formats used to export code to VCS such as git.
- How to deploy a pharo application - A guide to deploy a Pharo application.
- Windows 10 Subsystem For Linux (WSL) - Getting Pharo to run on Windows 10 Subsystem for Linux.
- Using CJK (Chinese, Japanese, and Korean) characters - Guide to help you configure Pharo to support Chinese, Japanese, and Korean characters.
- Using CJK input methods - Guide to help you configure Pharo to support CJK input method.
- Tweaking big images - Tips to make large pharo images more responsive.
- Image file format - Documentation about binary format of Pharo images.
- How to setup a travis build - How to have automated build on travis
Pharo Language
- Extension methods - How to extend existing classes in your packages.
- Traits - Structure to build classes via composition.
- Some cool snippets in Pharo - A cook book to answer common needs of a Pharo developer.
- Progress bar - Display a progress bar to give feedback to the user.
- Morphic Layouts - Documentation about the layout management in the Morphic Library of pharo.
- Pragmas - A guide on Pragmas, annotations to compiled methods to add additional properties.
- Coding conventions - A list of convention to follow when writing Pharo code.
- Exceptions - How Pharo's exceptions work and explanations on how to use them.
- Sorting collections - How to sort collections with Pharo's built-in API.
- Sessions management - Documentation on setting up start-up and shut-down actions in Pharo.
Pharo Tooling
- Playground - Documentation on the usage of Pharo's playground.
- Profiling - Measure the time and space your program takes to execute.
- Menubar and World menu - A guide to configure and customize Pharo's menubar and world menu.
- Iceberg on Windows workaround - Troubleshooting for some issues appearing when using Iceberg on Windows.
- Inspector - Documentation on the usage of Pharo's inspector.
- Refactoring - Documentation on the usage of Pharo refactoring's tool.
- Settings - How to use Pharo's settings system to define your own settings.
Pharo projects
<!-- - [How to deal with files](PharoProjects/Files.md) ![TODO](https://img.shields.io/badge/Progress-TODO-red.svg?style=flat) --> <!-- - [Objects serialization](PharoProjects/ObjectsSerialization.md) - Lists possibilities to serialize your objects on disk. ![TODO](https://img.shields.io/badge/Progress-TODO-red.svg?style=flat) -->- Announcer - Implementation of the observer design pattern built-in Pharo.
- Basic interactions with OS
- Cursor
- Dynamic variables
- Numbers
- Rich text
- WebBrowser - A project to open a link in the default web browser.<!-- - [Metalinks](PharoProjects/Metalinks.md) ![TODO](https://img.shields.io/badge/Progress-TODO-red.svg?style=flat) -->
Pharo and OpenSmalltalk Virtual Machine
External projects
Data exchange
<!-- - [XML support](ExternalProjects/Export/XML.md) ![TODO](https://img.shields.io/badge/Progress-TODO-red.svg?style=flat) - [HTML support](ExternalProjects/Export/HTML.md) ![TODO](https://img.shields.io/badge/Progress-TODO-red.svg?style=flat) - [Arff support](ExternalProjects/Export/Arff.md) - Arff is a format defined by [Weka](http://www.cs.waikato.ac.nz/ml/weka/) to be used for data importation. ![TODO](https://img.shields.io/badge/Progress-TODO-red.svg?style=flat) --> <!-- ### Data structures - [DataFrame](ExternalProjects/DataStructures/DataFrame.md) ![TODO](https://img.shields.io/badge/Progress-TODO-red.svg?style=flat) -->Migration guidelines
External resources
- Pharo Community - Various links of people involved in Pharo community. Helps to discover Pharo ecosystem.
- Contributing to Pharo - Official tutorial on how to contribute to Pharo using Iceberg.
- Generating your own Pharo images (Bootstrapping) - Tools for generating small Pharo images from source code.
- Magritte3 Wiki - Wiki related to Magritte3.
- Sean's wiki about pharo - The wiki of Sean P. DeNigris related to Pharo.
- #pharotip hashtag on twitter - Tweets to help new users to easily get going with Pharo, started by @astares.
<!--- Badges: * ![TODO](https://img.shields.io/badge/Progress-TODO-red.svg?style=flat) * ![Unfinished](https://img.shields.io/badge/Progress-Unfinished-yellow.svg?style=flat) * ![Review](https://img.shields.io/badge/Progress-Review-blue.svg?style=flat) -->