<commit_before>@page about About
@parent canjs 0

@description
Welcome to CanJS!

@body
CanJS’s mission is to minimize the cost of building and maintaining JavaScript applications by balancing innovation and stability, helping developers transcend a changing technology landscape.

You shouldn’t have to rewrite your application to keep pace with technology. We constantly integrate new ideas and evolving best practices into CanJS libraries, but in a responsible way that makes it possible to upgrade gracefully. We aim to provide a stable and innovative platform, so you can block out noise and stay focused your app, not the tools.<commit_msg>Flesh out the About page<commit_after>@page about About
@parent canjs 0

@description
Welcome to CanJS! Learn about CanJS’s mission & technical highlights, who uses CanJS, and our future roadmap.

@body

CanJS’s mission is to __minimize the cost of building and maintaining
JavaScript applications by balancing innovation and stability, helping developers transcend a changing technology landscape__.
Read about our mission and more on the [guides/mission] page.

Learn about CanJS’s [guides/technical], including its outstanding observable objects and malleable model layer provided in independent packages at a small size.

CanJS is used by some of the largest companies in the world. Find out who on the [guides/who-uses-canjs] page.

Learn about CanJS’s future plans, how we make them, and how you can influence them on the [roadmap] page.
{'fraction_non_alphanumeric': 0.038280725319006045, 'fraction_numerical': 0.001343183344526528, 'mean_word_length': 5.1570247933884295, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1850841', 'n_tokens_mistral': 359, 'n_tokens_neox': 342, 'n_words': 216}