$npx skillfedfor your agent

datafiles

File-based ORM for dataclasses.

Worth itPyPI Software DevelopmentReleased Jan 2026133.5K downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — datafiles-2.5-py3-none-any.whl
v2.5 · released 2026-01-30 · Python <4.0,>=3.10 · 7 runtime deps: cached_property, classproperties, json-five, minilog, parse, ruamel.yaml, tomlkit

Yes. Datafiles is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and offers a clean, low-friction way to persist dataclasses to disk with bidirectional sync. Install it if you need automatic file-based persistence for configuration, state, or fixtures; skip it if you require a traditional database or need Python versions below 3.10.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.10 or later (minimum 3.10, maximum <4.0).
  • Low friction: pure Python wheel with seven runtime dependencies (cached_property, classproperties, json-five, minilog, parse, ruamel.yaml, tomlkit).
  • Active maintenance with last commit 2026-08-05 and 213 repository stars; supports Python 3.10–3.14.

License · maintenance · safety

MIT (permissive) — MIT license (permissive) imposes no restrictions on use, modification, or distribution in proprietary or open-source projects.

last release 2026-01-30 (196 days) · last repo commit 2026-08-05 · 213 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 133,532 downloads/mo, #11,508 on PyPI

Verify before relying

from dataclasses import dataclass
from datafiles import datafile

@datafile("config/{self.name}.yml")
@dataclass
class Config:
    name: str
    value: int = 0

config = Config("app")
config.value = 1  # automatically saved to config/app.yml
  • Whether round-trip formatting preservation works equally well across all supported formats (YAML, JSON, TOML, JSON5).
  • Performance characteristics when synchronizing large dataclass instances or deeply nested structures.
  • Behavior when multiple processes or threads modify the same dataclass instance concurrently.
Same gist for agents: .md · .json

What it is and what it does

Datafiles bridges Python dataclasses and the filesystem by automatically persisting object state to files and reloading changes from disk. You decorate a dataclass with a file path pattern, then read and write the object normally—changes sync bidirectionally without explicit save/load calls. It supports YAML, JSON, TOML, and JSON5 formats, preserving comments and formatting where possible.

The library is designed for configuration management, test fixtures, version-controlled state, and prototyping data models before committing to a database backend. It depends on ruamel.yaml, tomlkit, json-five, parse, minilog, classproperties, and cached_property to handle format-specific serialization and property introspection.

Use it for

  • Store application configuration in YAML or TOML files that remain human-editable while staying type-safe in Python.
  • Load test fixtures from files into dataclass instances, automatically coercing types and validating structure.
  • Synchronize application state across machines using file-sharing services by treating the filesystem as a shared data layer.
  • Prototype data models with file-based persistence before migrating to a database backend.
  • Version-control program state and configuration by keeping dataclass instances synchronized to committed files.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

Datafiles is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and offers a clean, low-friction way to persist dataclasses to disk with bidirectional sync. Install it if you need automatic file-based persistence for configuration, state, or fixtures; skip it if you require a traditional database or need Python versions below 3.10.

Install

datafiles on PyPI

Before you install

Low friction: pure Python wheel with seven runtime dependencies (cached_property, classproperties, json-five, minilog, parse, ruamel.yaml, tomlkit). Active maintenance with last commit 2026-08-05 and 213 repository stars; supports Python 3.10–3.14.

Requires Python 3.10 or later (minimum 3.10, maximum <4.0).

License in practice

MIT license (permissive) imposes no restrictions on use, modification, or distribution in proprietary or open-source projects.

Quickstart

from dataclasses import dataclass
from datafiles import datafile

@datafile("config/{self.name}.yml")
@dataclass
class Config:
    name: str
    value: int = 0

config = Config("app")
config.value = 1  # automatically saved to config/app.yml

Verify before relying

  • Whether round-trip formatting preservation works equally well across all supported formats (YAML, JSON, TOML, JSON5).
  • Performance characteristics when synchronizing large dataclass instances or deeply nested structures.
  • Behavior when multiple processes or threads modify the same dataclass instance concurrently.

Package facts

LicenseMIT permissive
Python supportSupports the current Python release <4.0,>=3.10
Install frictionLow. Pure-Python wheel
Runtime dependencies
7 packages
cached_propertyclasspropertiesjson-fiveminilogparseruamel.yamltomlkit
MaintenanceActively maintained 196 days since the last release
Last repo commit
First released
Downloads133,532 / month, #11,508 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9Topic :: Software DevelopmentTopic :: Utilities

Evidence: datafiles-2.5-py3-none-any.whl

Tags

Capabilities
dataclass file serializationyaml json config syncfile-based orm pythonautomatic dataclass persistencebidirectional file synctoml yaml dataclasspython object file mapping
Topics
dataclass-ormfile-persistenceconfig-management
PyPI keywords
dataclassesserializationtype-annotationsobject-relational mappingYAMLJSONJSON5TOML

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “dataclass file serialization”

  • datafilesDatafiles is a file-based ORM that automatically synchronizes Python…
  • databindDatabind deserializes JSON-like nested data structures into Python…
  • dataclasses-jsonConverts Python dataclasses to and from JSON with minimal…

Give your agent the search over MCP, or paste the wish link into any chat.

More Software Development packages

typing-extensions Worth it
PyPI · Software Development · released Jul 2026

Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.

PSF-2.0pure Python · 3.9+
1.9Bdownloads / mo
numpy Worth it
PyPI · Software Development · released Aug 2026

NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.

BSD-3-Clause AND 0BSD AND MIT AND Zlib AND CC0-1.0compiled wheel · 3.12+
1.1Bdownloads / mo
fastapi Worth it
PyPI · Software Development · released Jul 2026

FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.

MITpure Python · 3.10+
568.6Mdownloads / mo
annotated-doc With conditions
PyPI · Software Development · released Jul 2026

Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.

MITpure Python · 3.9+
456.2Mdownloads / mo
typer Worth it
PyPI · Software Development · released Aug 2026

Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.

Install it if you are building CLIs in Python.

MITpure Python · 3.10+
369.3Mdownloads / mo
distlib With conditions
PyPI · Software Development · released Jun 2026

Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.

permissive licensepure Python
323.3Mdownloads / mo

See also dataclass-wizard · YORM · dataclasses · typed-json-dataclass · databind · dataclasses-json · pyserde · linkml-runtime · draccus · shared