# tinycss2

tinycss2 is a low-level CSS parser and generator written in Python: it can parse strings, return objects representing tokens and blocks, and generate CSS strings corresponding to these objects.

Based on the CSS Syntax Level 3 specification, tinycss2 knows the grammar of CSS but doesn’t know specific rules, properties or values supported in various CSS modules.

- Free software: BSD license

- For Python 3.6+, tested on CPython and PyPy

- Documentation: https://doc.courtbouillon.org/tinycss2

- Changelog: https://github.com/Kozea/tinycss2/releases

- Code, issues, tests: https://github.com/Kozea/tinycss2

- Code of conduct: https://www.courtbouillon.org/code-of-conduct

- Professional support: https://www.courtbouillon.org

- Donation: https://opencollective.com/courtbouillon

tinycss2 has been created and developed by Kozea (https://kozea.fr). Professional support, maintenance and community management is provided by CourtBouillon (https://www.courtbouillon.org).

Copyrights are retained by their contributors, no copyright assignment is required to contribute to tinycss2. Unless explicitly stated otherwise, any contribution intentionally submitted for inclusion is licensed under the BSD 3-clause license, without any additional terms or conditions. For full authorship information, see the version control history.

Documentation

- First Steps
  - Installation
  - CSS Parsing
- Common Use Cases
  - Parsing Stylesheets
  - Parsing Rules
  - Serializing
- API Reference
  - Parsing
  - Serialization
  - Color
  - <An+B>
  - AST nodes
  - Glossary
- Going Further
  - Why tinycss2?
  - Why Python?

Extra Information

- Changelog
  - Version 1.1.1
  - Version 1.1.0
  - Version 1.0.2
  - Version 1.0.1
  - Version 1.0.0
  - Version 0.6.1
  - Version 0.6.0
  - Version 0.5
  - Version 0.4
  - Version 0.3
  - Version 0.2
  - Version 0.1
- Contribute
  - Code & Issues
  - Tests
  - Documentation
- Support
  - Sponsorship
  - Professionnal Support