Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
168 lines (165 sloc) 12.1 KB
title: SproutCore Guides
description: These guides are designed to help you write and perfect your code.
team_name: The People That Make It Happen
Documentation Team:
- name: Peter Wagenet
nick: pwagenet
image: credits/pwagenet.jpg
description: Peter Wagenet is a member of the SproutCore Core Team and a SproutCore engineer at Strobe. Prior to working at Strobe, Peter was also a Ruby on Rails engineer and still enjoys tinkering around with it in his free time. His projects can be found on <a href="">github</a> and his Twitter at <a href="">@wagenet</a>.
- name: Yehuda Katz
nick: wycats
image: credits/ykatz.jpg
description: Yehuda Katz is a member of the SproutCore, Ruby on Rails and jQuery Core Teams; during the daytime, he works as an architect at Strobe. Yehuda is the co-author of the best-selling jQuery in Action, the upcoming Rails 3 in Action, and is a contributor to Ruby in Practice. He blogs at <a href=""></a> and can be found on Twitter as <a href="">@wycats</a>.
- name: Mike Ball
nick: onkis
image: credits/mball.png
description: Mike has been involved with SproutCore for nearly three years. During that period he used SproutCore to transform Eloqua’s UX. As a core team member Mike has been primarily involved developing SpoutCore’s UI builder Greenhouse and its associated frameworks and infrastructure. Mike has also contributes to the SproutCore-UI and SproutCore Universal Datastore frameworks, and on rare occasions posts to his blog about SproutCore design patterns.
- name: Peter Bergstrom
nick: pbergstrom
image: credits/pbergstrom.jpg
description: Peter is a long time SproutCore developer and engineer at Strobe. He first began developing SproutCore applications in 2007 at Apple where he was the architect for the MobileMe Calendar application. For his graduate thesis, he wrote a SproutCore application, <a href=>PaperCube</a>, that explored a new way to navigate academic citation networks using web-based visualizations <a href=>see it on GitHub</a>.
- name: Kyle Carriedo
nick: kcarriedo
description: Kyle is the Lead Software Engineer of The Code Boutique. Currently, he is working on his Masters in Computer Science, Unix Admin certification from University California of San Diego and received his Bachelors in Computer Science from San Francisco State University.
- name: Tom Dale
nick: tomdale
image: credits/tdale.jpg
description: Tom is an engineer at Strobe and a member of the SproutCore Core Team. He built an internal tool for the Apple retail stores in 2009, which was his first time using SproutCore, his first exposure to JavaScript, and his first time meeting Charles Jolley. From 2009 to the end of 2010, he helped maintain SproutCore at Apple and assisted building the next generation of their web applications.
- name: Geoffrey Donaldson
nick: geoffreyd
image: credits/gdonaldson.jpg
description: Geoffrey is a freelance SproutCore Developer. He has been working with SproutCore since 2009.
- name: Chad Eubanks
nick: ceubanks
description: Chad is the Lead UI Engineer of The Code Boutique. He recieved formal and informal training from industry leaders such as Apple Incs. WWDC 2009, WWDC 2010, The Big Nerd Ranch, The Art Institute, and University California of San Diego for computer programming, web development, web design, and law.
- name: Topher Fangio
nick: topherfangio
image: credits/tfangio.jpg
description: Topher is the System Architect at Pharos Resources, LLC and has experience with Ruby on Rails and other web technologies.
- name: Jason Gignac
nick: jgignac
description: Jason is an experienced web developer, particularly specializing in Enterprise applications. He works for Rackspace in San Antonio, TX, where he builds in Ruby, C#, Perl, Javascript, and anything else that the motley hodgepodge of enterprise platforms requires. He has been working on Sproutcore for less than a year, but is jumping to the thick of things as far as possible.
- name: Vibul Imtarnasan
nick: veebs
image: credits/vimtarnasan.jpg
description: Vibul is an entrepreneur, solutions architect and software developer. He blogs at <a href=""></a>.
- name: Alex Iskander
nick: ialexi
description: Alex is a member of the SproutCore core team.
- name: Tyler Keating
nick: publickeating
image: credits/tkeating.jpg
description: After completing a Computer Science degree and then an Electrical Engineering degree from the University of Saskatchewan, Tyler began his career as an engineering manager at SaskTel. However, a persistent desire to write software led him to new jobs writing Mac desktop apps, Rails web apps, iPhone & Blackberry mobile apps and most recently, SproutCore, best of all worlds, apps. He currently works for Strobe from his home in Regina, Canada.
- name: Florian Kugler
nick: fkugler
image: credits/fkugler.jpg
description: Florian was a software developer and sports biomechanist before co-founding the elite sports consulting company <a href="">Aprendo</a>. He is currently building IT systems to support elite sports processes.
- name: Shawn Morel
nick: shawnmorel
description: Shawn Morel is a software generalist with lots of experience building user interfaces in Cocoa, Flex, and bare-bones HTML.
- name: Erich Ocean
nick: erichocean
image: credits/eocean.jpg
description: In 2008-2009, Erich consulted with Apple on the transition from SproutCore 0.9 to 1.0 which entailed almost a complete rewrite of the codebase. He also provides SproutCore training and mentoring to companies and individuals throughout the world.
- name: Piotr Sarnacki
nick: drogus
image: credits/psarnacki.jpg
description: ""
- name: Scott "oldfartdeveloper" Smith
nick: oldfartdeveloper
image: credits/ssmith.jpg
description: Scott is a Senior Developer at Hedgeye Risk Management.
- name: Majd Taby
nick: mtaby
description: Majd is a member of the SproutCore core team.
- name: Devin Torres
nick: dtorres
image: credits/dtorres.jpg
description: Devin has worked with SproutCore since 2009 and has developed more SproutCore applications than he can remember. He continues to explore opportunities to utilize SproutCore and HTML5 technologies in new and exciting ways. You can read his blog at <a href=""></a> or follow him on Twitter <a href="">@devinus</a>.
Start Here:
- title: "Getting Started: Part 1"
url: getting_started
text: "Learn how to build a robust web app using the power of SproutCore along with the technologies you already know, like HTML and CSS."
- title: "Getting Started: Part 2"
url: getting_started_2
text: "Connect the application you wrote in Part 1 to SproutCore's data store, and learn how to test with fixture data."
- title: Core Concepts
url: core_concepts
text: "In this guide, we will touch on many of the core concepts of SproutCore like bindings and the run loop. We'll cover just enough to get you going with out getting bogged down in the details. If you want to learn more, take a look at the detailed overviews of these concepts in the \"Digging Deeper\" section."
- title: Enumerables
url: enumerables
text: "To simplify working with various kinds of lists, SproutCore provides a unified Enumerable interface. This guide explores which SproutCore objects are Enumerable, and how to use the Enumerable API."
- title: Using Handlebars Templates
url: using_handlebars
text: "Learn how to make your application come to life by leveraging the tight integration between SproutCore and Handlebars, a semantic templating language."
- title: Core View Concepts
url: views
text: "In this guide, we will cover the basics of SproutCore views, and show you how to customize the built-in SproutCore views for your own use."
- title: Building Your Own Views
url: custom_views
text: "Most applications will quickly go beyond the built-in SproutCore views. In this guide, we will cover how to build and style your own views."
construction: true
- title: Animations
url: animate
text: "In this guide, we will cover the basics of using animations in SproutCore, and show you how to add SC.View#animate in your code."
construction: true
- title: SproutCore Records
url: records
text: "The SproutCore data framework is a full-featured ORM-like framework for working with data in SproutCore. Learn about the SproutCore data framework and how you can use it to interact with your data sources."
- title: Hooking Up to a Backend
url: connect_server
text: "This guide covers how to create a SproutCore data source, which will retrieve data from your servers and make them available to the SproutCore Records you designed in the previous guide."
construction: true
- title: Transactions Using Nested Stores
url: nested_stores
text: "SproutCore provides a powerful facility for allowing your app's users to make changes to local data, then commit or rollback the changes as needed. Learn how to use 'nested stores' to manage the state of your data as it moves through your user's edits."
construction: true
- title: Using Fixtures
url: fixtures
text: "In order to facilitate rapid development, SproutCore provides a facility for using pre-set fixture data as your data source. This guide covers how to set up your fixtures, and how to replace them with your real server once you're ready to get going."
- title: "Using Chance, SproutCore's CSS Framework"
url: chance
text: "Chance is SproutCore's CSS preprocessor. In this guide, you will learn how to use the CSS extensions that come with Chance to streamline your styling workflow."
- title: Theming Your App
url: theming_app
text: "In this guide, we'll cover how to change the style of SproutCore controls in your app. As an example, we'll re-theme an SC.ButtonView."
- title: Writing Themeable Controls
url: themeable_controls
text: "In this guide, we'll go over to how to develop a control that can be themed. This can be useful if you want to have different visual displays in your application (like a regular and overlay theme) or when distributing a theme for wider use."
construction: true
- title: "Unit Testing"
url: unit_test_framework
text: "SproutCore has an easy-to-learn unit test facility that can be used to drive SproutCore test-driven development. This guide describes the basic SproutCore test commands."
- title: "Adding a Unit Test"
url: adding_unit_test
text: "Adding a unit test automatically or manually."
- title: "Writing Unit Tests"
url: writing_unit_tests
text: "Describes how to write unit tests using module and test functions"
- title: "Running Unit Tests"
url: running_unit_tests
text: "How tests are loaded and executed by the test runner."
- title: "Testing Guidelines in SproutCore"
url: testing_guidelines
text: "Developing a SproutCore application using test-driven development (TDD)."
construction: true
- title: "SproutCore Development Using TDD"
url: todos_tdd
text: "Show implementing the TODOs project using TDD."
Contributing to SproutCore:
- title: "Javascript Style Guide"
url: "style_guide"
text: "This guide covers the style of SproutCore framework code."
- title: "Committer Guidelines"
url: "commit_code"
text: "A detailed checklist of the do's and don'ts of SC framework code."
- title: "Documentation Guidelines"
url: "documentation_guidelines"
text: "Writing and generating jsdoc documentation."