# littlefs-project/littlefs

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/littlefs-project-littlefs).**

6,431 stars · 964 forks · C · bsd-3-clause

## Links

- GitHub: https://github.com/littlefs-project/littlefs
- awesome-repositories: https://awesome-repositories.com/repository/littlefs-project-littlefs.md

## Topics

`embedded` `filesystem` `microcontroller`

## Tags

### Data & Databases

- [Power-Loss-Safe Flash Filesystems](https://awesome-repositories.com/f/data-databases/data-access-querying/memory-mapped-file-access/flash-memory-access/flash-storage-managers/power-loss-safe-flash-filesystems.md) — Provides an embedded filesystem for flash storage that ensures data integrity without a journal or write-ahead log.
- [Two-Block Metadata Logs](https://awesome-repositories.com/f/data-databases/atomic-commit-logs/two-block-metadata-logs.md) — Stores filesystem metadata in two-block logs that update atomically to survive power loss. ([source](https://github.com/littlefs-project/littlefs/blob/master/DESIGN.md))
- [Wear-Leveling Allocators](https://awesome-repositories.com/f/data-databases/block-storage/wear-leveling-allocators.md) — Distributes write cycles evenly across flash blocks and recovers from bad blocks during copy-on-write operations. ([source](https://github.com/littlefs-project/littlefs/blob/master/DESIGN.md))
- [Wear-Leveling Filesystems](https://awesome-repositories.com/f/data-databases/data-access-querying/memory-mapped-file-access/flash-memory-access/flash-storage-managers/wear-leveling-filesystems.md) — Implements wear leveling and bad block recovery for flash memory in an embedded filesystem.
- [Wear-Leveling Flash Filesystems](https://awesome-repositories.com/f/data-databases/data-access-querying/memory-mapped-file-access/flash-memory-access/flash-storage-managers/wear-leveling-flash-filesystems.md) — Distributes erase cycles evenly across flash blocks and recovers from bad blocks to extend device lifespan.
- [Power-Loss-Safe Atomic Moves](https://awesome-repositories.com/f/data-databases/data-governance-modeling/data-management-governance/data-integrity-validation/data-integrity/atomic-file-operations/power-loss-safe-atomic-moves.md) — Provides atomic file operations that survive sudden power cuts using two-block logs and distributed state.
- [Skip-List File Storages](https://awesome-repositories.com/f/data-databases/file-storage-systems/skip-list-file-storages.md) — Stores file data in a deterministic skip-list structure for efficient traversal and append operations. ([source](https://github.com/littlefs-project/littlefs/blob/master/DESIGN.md))
- [Two-Block Metadata Logs](https://awesome-repositories.com/f/data-databases/undo-logs/transaction-recovery-logs/filesystem-redo-logs/two-block-metadata-logs.md) — Uses two-block metadata logs to atomically update filesystem metadata and survive power failures.
- [Inline Small File Storages](https://awesome-repositories.com/f/data-databases/file-storage-systems/inline-small-file-storages.md) — Embeds small files directly inside directory metadata to reduce storage overhead. ([source](https://github.com/littlefs-project/littlefs/blob/master/DESIGN.md))

### Operating Systems & Systems Programming

- [Microcontroller Filesystems](https://awesome-repositories.com/f/operating-systems-systems-programming/virtual-filesystem-schemes/embedded-filesystem-abstractions/microcontroller-filesystems.md) — Provides a copy-on-write, power-loss-safe filesystem for microcontrollers with minimal RAM usage.
- [Threaded Directory Trees](https://awesome-repositories.com/f/operating-systems-systems-programming/inode-based-directory-organization/threaded-directory-trees.md) — Organizes directories as a threaded tree of metadata pairs for constant-RAM traversal. ([source](https://github.com/littlefs-project/littlefs/blob/master/DESIGN.md))
- [Lookahead-Based Allocators](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/file-system-management/file-system-operations/block-allocation-and-fragmentation/lookahead-based-allocators.md) — Allocates blocks dynamically by scanning a small lookahead buffer, avoiding a persistent free list. ([source](https://github.com/littlefs-project/littlefs/blob/master/DESIGN.md))
- [Low-Memory Filesystems](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/file-system-management/file-system-operations/low-memory-filesystems.md) — Operates with minimal RAM using a small lookahead buffer for block allocation on microcontrollers.
- [Copy-on-Write Filesystems](https://awesome-repositories.com/f/operating-systems-systems-programming/virtualization-emulation/virtualization-platforms/virtualization-architectures/copy-on-write-disk-formats/copy-on-write-filesystems.md) — Implements a copy-on-write filesystem that prevents data corruption during writes on flash storage.
- [Lookahead-Based Allocators](https://awesome-repositories.com/f/operating-systems-systems-programming/virtualization-emulation/virtualization-platforms/virtualization-architectures/copy-on-write-disk-formats/lookahead-based-allocators.md) — Implements a copy-on-write block allocator that scans a lookahead buffer to distribute wear evenly across flash blocks.
- [In-Memory Disk Emulation](https://awesome-repositories.com/f/operating-systems-systems-programming/in-memory-disk-emulation.md) — Emulates a flash block device in memory to test filesystem operations without physical hardware.

### Education & Learning Resources

- [Directory Trees](https://awesome-repositories.com/f/education-learning-resources/educational-resources/algorithms-theory-academics/algorithm-data-structure-guides/binary-trees/threaded/directory-trees.md) — Implements a threaded directory tree that enables constant-RAM traversal of deeply nested directories.
- [Deterministic Skip-List File Storages](https://awesome-repositories.com/f/education-learning-resources/educational-resources/algorithms-theory-academics/cs-theory-foundations/data-structure-implementations/skip-lists/deterministic-skip-list-file-storages.md) — Ships a deterministic skip-list file storage that enables efficient traversal and append operations on flash memory.

### Hardware & IoT

- [Atomic Metadata Filesystems](https://awesome-repositories.com/f/hardware-iot/firmware-management/remote-firmware-updaters/firmware-ota-update-systems/power-fail-safe-update-mechanisms/atomic-metadata-filesystems.md) — Maintains filesystem consistency after power loss using atomic metadata updates and two-block logging.

### Software Engineering & Architecture

- [Cross-Directory Atomic Moves](https://awesome-repositories.com/f/software-engineering-architecture/atomic-file-writes/cross-directory-atomic-moves.md) — Provides atomic file moves between directories that survive sudden power cuts using distributed state coordination. ([source](https://github.com/littlefs-project/littlefs/blob/master/DESIGN.md))
- [Atomic File Move Coordinators](https://awesome-repositories.com/f/software-engineering-architecture/job-processors/database-backed-persistence/distributed-state-coordination/atomic-file-move-coordinators.md) — Provides distributed global state coordination to ensure atomic file moves survive sudden power loss.
- [Low-RAM Directory Traversals](https://awesome-repositories.com/f/software-engineering-architecture/recursive-validation-engines/recursive-tree-traversers/file-system-traversers/low-ram-directory-traversals.md) — Enables low-RAM file traversal using threaded metadata trees and deterministic skip-list structures.

### Content Management & Publishing

- [Small File Inline Storages](https://awesome-repositories.com/f/content-management-publishing/inline-metadata-embedding/small-file-inline-storages.md) — Embeds small files directly inside directory metadata to reduce storage overhead on flash devices.

### Testing & Quality Assurance

- [Device Emulators](https://awesome-repositories.com/f/testing-quality-assurance/automation-interaction-tools/user-interaction-simulation/device-emulators.md) — Emulates a flash block device in memory to test filesystem behavior without physical hardware.

### Part of an Awesome List

- [Storage and Filesystems](https://awesome-repositories.com/f/awesome-lists/data/storage-and-filesystems.md) — Fail-safe filesystem designed for microcontrollers.
