# Introduction

Blahblah some basic introduction here

# Design Philosophy

Our specifications follow our design philosophy:

  • Simplicity: seek zen-like simplicity in which there is nothing to add and nothing to take away.
  • Extensibility: design for extensibility and customisation. This makes hard things possible and allows for future evolution -- nothing we build will be perfect.
  • Human-editable and machine-usable: specs should preserve human readability and editability whilst making machine-use easy.
  • Reuse: reuse and build on existing standards and formats wherever possible.
  • Cross technology: support a broad range of languages, technologies and infrastructures -- avoid being tied to any one specific system.

This philosophy is itself based on the overall design principles of the Frictionless Data project:

  • Focused: We have a sharp focus on one part of the data chain, one specific feature – packaging – and a few specific types of data (e.g. tabular).
  • Web Oriented: We build for the web using formats that are web "native" such as JSON, work naturally with HTTP such as plain text CSVs (which stream).
  • Distributed: we design for a distributed ecosystem with no centralized, single point of failure or dependence.
  • Open: Anyone should be able to freely and openly use and reuse what we build. Our community is open to everyone.
  • Existing Software: Integrate as easily as possible with existing software both by building integrations and designing for direct use – for example we like CSV because everyone has a tool that can access CSV.
  • Simple, Lightweight: Add the minimum, do the least required, keep it simple. For example, use the most basic formats, require only the most essential metadata, data should have nothing extraneous.

# Participate and Contribute

This effort is community-run and contributions, comments and corrections are warmly welcomed. Most work proceeds in an RFC-style manner with discussion on the forum and the chat.

Material is kept in a git repo on GitHub - fork and submit a pull request to add material. There is also an issue tracker which can be used for specific issues or suggestions.