Cappuccino jest zbudowane na podstawie standardowych internetowych technologiach takich jak JavaScript i w większości implementuje znajome API z GNUstep i Apple Cocoa. Kiedy programujesz w Cappuccino, nie musisz się martwić zawiłościami tradycyjnych technologi internetowych takich jak HTML, CSS lub nawet DOM. Nieprzyjemności związane z budowaniem kompleksowych międzyplatwormowych aplikacji są wydzielone daleko od Ciebie.
Cappuccino zostało zaimplementowane przy użyciu nowego języku programowania zwanego Objective-J, który przypomina Objective-C i całkowicie zbudowany na podstawie JavaScript. Programy napisane w Objective-J są interpretowane po stronie klienta, więc kompilacja lub dodatkowe plug-iny nie są potrzebne. Objective-J obok Cappuccino jest projektem na licencji LGPL
Nikt nie zaprzeczy że istnieją wyraźnie różnice pomiędzy internetową a desktop-ową aplikacją. Podobnie, my wierzymy że jest duża różnica pomiędzy statyczną stroną internetową a w pełni rozwiniętą aplikacja internetową. Cappucino jest zaprojektowany dla aplikacji nie do stron internetowych.
Zamiast wykonywać większość pracy na serwerze, aplikacje Cappuccino wykonują tyle ile jest możliwe po stronie klienta. Typowa aplikacja w Cappuccino nigdy się nie przeładuje, ale raczej będzie się komunikować z serwerem za pomocą technik AJAX i zaprezentuję dane w kodzie klienta. 280 Slides jest pierwszą aplikacja napisaną w Cappuccino i jest prezentacją wszystkiego co jest możliwe w tym nowym frameworku.
Zamiast przejmować się jak zaimplementować funkcję: przeciągnij i upuść (drag and drop), kopiuj, wklej (dla tekstu i obiektów), wstecz, ponów, zapis dokumentów, bogaty między-przeglądarkowy wygląd i grafikę oraz mnóstwo innych funkcji… deweloperzy są wolni i mogą się skoncentrować na konkretnych zagadnieniach jak wsparcie dla PowerPoint'a lub Twittera (Blipa ;)) lub czymkolwiek innym co może uczynić ich aplikację unikalną i nieodpartą.
Cappuccino nie jest zaprojektowane do budowania stron internetowych lub tworzenia już istniejących „dynamicznymi”. Myślimy że ten cel bardzo odległy od rozwijania aplikacji dostarczonych przez pojedynczy framework. Projekty takie jak Prototype and jQuery są doskonałe do takich zadań, ale są one zmuszone przez ich naturę do tworzenia kompromisów co uniemożliwia im bycia skutecznymi w rozwoju aplikacji.
Z drugiej strony z istniejących frameworków jest technologia taka jak SproutCore. SproutCore stawia sobie podobny cel jak Cappuccino ale obiera całkowicie inne podejście. Ciągle polega na HTML, CSS, JavaScript, Prototype i całkowicie nowym unikalnym zestawie API. Wymaga on również odpowiedniego /development software/ i uciążliwą kompilację. Myślimy że jest to złe podejście.
Z Cappuccino nie potrzebujesz znać HTML. Nigdy nie napiszesz linijki kodu CSS. Nigdy nie będziesz musiał działać z DOM. Prosimy tylko deweloperów by nauczyli się jednej technologii Objective-J i jednego zestawu API. Dodatkowo, te technologie są zaimplementowane na dobrze znanych już istniejących. Deweloper może osiągnąć dekady zbierania zbiorowego doświadczenia poprzez przyśpieszenie tempa budowy bogatych aplikacji internetowych.
Jeżeli zamierzasz budować bogate aplikację internetowe to musisz się nauczyć czegoś nowego. Wiele osób myśli że będzie to JavaScript 2 lub HTML 5 lub jakiś nowy standard. Problem jest, zdaliśmy sobie z niego sprawę, organy normalizacyjne działają za wolno. Cappuccino działa teraz, nie w teoretycznej przyszłości. Objective-J jest zasadniczo JavaScript 2, ale dostępnym dzisiaj w każdej większej przeglądarce internetwej. Ponieważ my polegamy tylko na najważniejszych technologiach webowych, usprawnienia nie są ograniczone tempem /browser vendors/ (sprzedawców przeglądarki?) czy organu normalizującego.
Cappuccino i Objective-J działa na wszystkich współczesnych przeglądarkach internetowych, między innymi:
Oczywiście, chcę podziękować wszystkim z świata open source, zawdzięczamy wiele dzięki innym, wliczając w to kilka istniejących projektów. Pomiędzy nimi są: