Soil

Description

An object oriented database that is easy to use and fun to play with

Details

Source
GitHub
Dialect
pharo (40% confidence)
License
MIT
Stars
58
Forks
10
Created
Aug. 8, 2022
Updated
April 1, 2026
Topics
database oop pharo

Categories

Database

README excerpt

# Soil

[![CI matrix](https://github.com//ApptiveGrid/Soil/actions/workflows/build.yml/badge.svg)](https://github.com//ApptiveGrid/Soil/actions/workflows/build.yml)

Soil is an object oriented database in [pharo](http://pharo.org). It is transaction based having ACID transactions. It has binary search capabilities with SkipList and BTree+ indexes. It aims to be a simple yet powerful database making it easy to develop with, easy to debug with, easy to inspect, ... 

To read more please have a look at the [documentation](./docs/soil.md)

## Loading

Load it in 64bit Pharo 11/12/13/alpha with Metacello:

```smalltalk
Metacello new 
	repository: 'github://ApptiveGrid/Soil:main/src';
	baseline: 'Soil';
	load.
```
Note: For now, Windows is not supported. But v5 will most likely add support for windows

**caution** Soil is in an early stage meaning there are might be things missing. It is battle tested as it is the driving database behind [ApptiveGrid](http://www.apptivegrid.de) but you might have different requirements. If so, tell us!

## Latest release

The latest release is [v4](https://github.com/ApptiveGrid/Soil/tree/v4) which you can load via

```smalltalk
Metacello new 
	repository: 'github://ApptiveGrid/Soil:v4/src';
	baseline: 'Soil';
	load.
```

The changelog can be found [here](https://github.com/ApptiveGrid/Soil/blob/v3/docs/changelog.md)

*note*: Releases in Soil are branches. Loading it with a release tag will get the hot fixes of that release. If you do not want this please use the commit hash as version instead

### Development

We use github for organizing our development. You can see what we are doing right now on the [project board](https://github.com/orgs/ApptiveGrid/projects/2). An up-to-date list of milestones you can find in [milestones](https://github.com/ApptiveGrid/Soil/milestones?direction=desc&sort=completeness&state=open). 

### Talks about Soil
- UK Smalltalk User Group: "Soil: a database for fun and profit", 26 November 2025 [YouTube](https://www.youtube.com/watch?v=mem0laBTbjU)
- ESUG 2025 talks
	-  "Rhizome - Distribution in Soil" Slides [Video Youtube](https://youtu.be/pTT-vy8qS4Y), [Slides PDF](https://archive.esug.org/ESUG2025/day2/209-hart-rhizome.pdf), [SlideShare](https://www.slideshare.net/slideshow/rhizome-distribution-in-soil-esug-2025/281735029)
   	-  "Soil: Tutorial and Q&A" Slides [Video Youtube](https://youtu.be/FarI6qqt1fk), [Slides PDF](https://archive.esug.org/ESUG2025/day2/210-denk-soil-tutorial.pdf), [SlideShare](https://www.slideshare.net/slideshow/soil-tutorial-and-q-a-esug-2025-gdansk/281735146)
- Smalltalks 2024 talk "Soil: an object oriented database for fun and profit" Video [YouTube](https://www.youtube.com/watch?v=JWY5HCUlX_4)
- ESUG 2023 talk "Soil: a fresh look on object oriented databases" Slides [PDF](http://archive.esug.org/ESUG2023/day3/02_1%20-%20Soil,%20a%20Fresh%20Look%20on%20Object%20Oriented%20Databases.pdf), [SlideShare](https://www.slideshare.net/slideshow/soil-a-fresh-look-on-object-oriented-databases/260898335), Video on [YouTube](https://www.youtube.com/watch?v=ui4TXcv7tus)
- ESUG 2023 talk "Soil and Pharo". Slides [PDF](http://archive.esug.org/ESUG2023/day3/02_2%20-%20Soil%20and%20Pharo.pdf), [SlideShare](https://www.slideshare.net/esug/soil-and-pharo-260898369)
- ESUG 2022 talk "there's no magic... until you talk about databases" Slides [PDF](http://archive.esug.org/ESUG2022/02Tuesday/08-hartl-deployment.pdf), [SlideShare](https://www.slideshare.net/slideshow/theres-no-magic-until-you-talk-about-databases/253132135), Video [YouTube](https://www.youtube.com/watch?v=MLtaHeFgbNo)
- ESUG 2022 ShowUs: "Soil: a OO Database for Pharo" Video [YouTube](https://www.youtube.com/watch?v=_5mk7yYVzds&t=3s)

### Soil in Action

If you want to see Soil in action,  [ApptiveGrid](https://www.apptivegrid.de) is using it to persist all data. (You can create a free accout [here](https://app.apptivegrid.de)). 

- Smalltalks 2024: "ApptiveGrid: solve (business) problems without programming"  [Video Youtube](https://www.youtube.com/watch?v=aPtsGswPJAc)
- Pharo Success Story: [ApptiveGrid - Digitize and Automatize Business Processes](https://www.pharo.org/success/ApptiveGrid.html)
- Demo ESUG 2022: "ApptiveGrid, a collaborative Database" [Video Youtube](https://www.youtube.com/watch?v=VVkJsIIqMKM)

### NEWS
- [ANN] Release V4 [Announcement](https://github.com/ApptiveGrid/Soil/blob/main/docs/versions/ann-v4.md) 2026-03-13
- Recording online: Soil: a database for fun and profit - 26 November 2025 UK Smalltalk User Group [YouTube](https://www.youtube.com/watch?v=mem0laBTbjU) 2026-01-05
- [ANN] Release V3 [Changelog](https://github.com/ApptiveGrid/Soil/blob/v3/docs/changelog.md) 2025-07-02
- ESUG 2025 talks 2025-07-02
	-  "Rhizome - Distribution in Soil" Slides [PDF](https://archive.esug.org/ESUG2025/day2/209-hart-rhizome.pdf), [SlideShare](https://www.slideshare.net/slideshow/rhizome-distribution-in-soil-esug-2025/281735029)
   	-  "Soil: Tutorial and Q&A" Slides [PDF](https://archive.esug.org/ESUG2025/day2/210-denk-soil-tutorial.pdf), [SlideShare](https://www.slideshare.net/slideshow/soil-tutorial-and-q-a-esug-2025-gdansk/281735146)
- Smalltalk 2024 talk "Soil: an object oriented database for fun and profit" 2025-07-04
	- Video on [YouTube](https://www.youtube.com/watch?v=JWY5HCUlX_4)
- The Soil Database has now an entry in [HAL](https://hal.science/hal-04726251) and is archived by [https://www.softwareheritage.org](https://www.softwareheritage.org) 2024-11-22
- [ANN] Release V2 of Soil, the object oriented database for Pharo implemented in Pharo [Mail](https://lists.pharo.org/empathy/thread/OE434T74GYE74GUNP3GLKYAZGGBXUSWT) 2024-08-28
- [ANN] Soil release v1 [Mail](https://lists.pharo.org/empathy/thread/6VYPN7R6TQPWDKQTRXUV7S6UU5AEMPV7) 2024-04-24
- ESUG2023 talk "Soil: a fresh look on object oriented databases"
	- [Slides PDF](http://archive.esug.org/ESUG2023/day3/02_1%20-%20Soil,%20a%20Fresh%20Look%20on%20Object%20Oriented%20Databases.pdf), [Slides SlideShare](https://www.slideshare.net/slideshow/soil-a-fresh-look-on-object-oriented-databases/260898335)
 	- Video on [YouTube](https://www.youtube.com/watch?v=ui4TXcv7tus)
- ESUG 2023 talk "Soil and Pharo"
  	- [Slides PDF](http://archive.esug.org/ESUG2023/day3/02_2%20-%20Soil%20and%20Pharo.pdf)
	- [Slides SlideShare](https://www.slideshare.net/esug/soil-and-pharo-260898369)
- Soil got the second prize in the [2023 ESUG Innovation Technology Awards](https://esug.github.io/2023-Conference/awardsSubmissions.html) !
- 06/2023: [ApptiveGrid](https://www.apptivegrid.de) starts using Soil
- Development of Soil announced at ESUG 2022
	- Talk "there's no magic... until you talk about databases"  [Slides PDF](http://archive.esug.org/ESUG2022/02Tuesday/08-hartl-deployment.pdf), [Slides SlideShare](https://www.slideshare.net/slideshow/theres-no-magic-until-you-talk-about-databases/253132135), [Video YouTube](https://www.youtube.com/watch?v=MLtaHeFgbNo)
 	- ShowUs: "Soil: a OO Database for Pharo"  [Video YouTube](https://www.youtube.com/watch?v=_5mk7yYVz)

(to get all Soil News by email, register [here](https://app.apptivegrid.de/api/r/623c52b04872209f7f96c908/6880cf1feeeecc1455f9cfc8/BDOmRVrRfuAzfyGa0wAGeVJBkUQzMsq0WKExnASoA79BfeX69KR))

![esug medal](https://esug.github.io/2022-Conference/esugAwards2ndSilverRoundMedal.png)
← Back to results