# ExtraMojo v0.9.0: Buffered{Reader,Writer}, Delimited{Reader,Writer}, CLI OptParser

**URL:** <https://forum.modular.com/t/extramojo-v0-9-0-buffered-reader-writer-delimited-reader-writer-cli-optparser/569>\
**Category:** Community Showcase\
**Created:** [February 13, 2025, 9:46pm UTC](https://forum.modular.com/t/extramojo-v0-9-0-buffered-reader-writer-delimited-reader-writer-cli-optparser/569 "2025-02-13T21:46:09Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![duck\_tape](https://sea1.discourse-cdn.com/flex001/user_avatar/forum.modular.com/duck_tape/32/432_2.png) [@duck\_tape](https://forum.modular.com/u/duck_tape)\
**Post date:** [February 13, 2025, 9:46pm UTC](https://forum.modular.com/t/extramojo-v0-9-0-buffered-reader-writer-delimited-reader-writer-cli-optparser/569/1 "2025-02-13T21:46:09Z")

</div>

ExtraMojo is a collection of things that aren’t available in the standard library.

## Changes

This release makes ExtraMojo compatible with Mojo 25.1, and brings a bunch of new features (see links for docs and examples):

- [BufferedReader / BufferedWriter](https://extramojo.github.io/ExtraMojo/ExtraMojo/io/buffered/) - classic buffered file IO
- [DelimReader / DelimWriter](https://extramojo.github.io/ExtraMojo/ExtraMojo/io/delimited/) - Reader/Writer for CSVs/TSVs
- [OptParser](https://extramojo.github.io/ExtraMojo/ExtraMojo/cli/parser/) - A simple cli arg parser loosely based on argparser (long opts only)
- [ReservoirSampler](https://extramojo.github.io/ExtraMojo/ExtraMojo/stats/sampling/ReservoirSampler/) - subsample from a stream of uknown size (more stats related functionality coming)

Docs and examples can be found here: [ExtraMojo](https://extramojo.github.io/ExtraMojo/)  
Docs created with the excellent [modo](https://github.com/mlange-42/modo) tool.

## Install and Usage

Add `https://repo.prefix.dev/modular-community` to your project channels:

```auto
# mojoproject.toml or pixi.toml

[project]
channels = ["conda-forge", "https://conda.modular.com/max", "https://repo.prefix.dev/modular-community"]
description = "Add a short description here"
name = "my-mojo-project"
platforms = ["osx-arm64"]
version = "0.1.0"

[tasks]

[dependencies]
max = ">=25.1.0,<26"

```

then run:

```bash
magic add ExtraMojo

```

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex001/uploads/modular/original/1X/2751e0fbdc595a99718b216730957e9db4448cfd.jpeg) [@system](https://forum.modular.com/u/system)\
**Post date:** [August 12, 2025, 9:46pm UTC](https://forum.modular.com/t/extramojo-v0-9-0-buffered-reader-writer-delimited-reader-writer-cli-optparser/569/2 "2025-08-12T21:46:23Z")

</div>

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.
