Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
E-commerce world, Spree/Solidus
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Alessandro Lepore
March 25, 2016
Programming
230
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
E-commerce world, Spree/Solidus
Alessandro Lepore
March 25, 2016
More Decks by Alessandro Lepore
See All by Alessandro Lepore
La bicicletta, un mezzo rivoluzionario
alepore
0
85
Storia del FortunaeLUG
alepore
0
35
Rails performance optimisation tips
alepore
1
87
Italy
alepore
1
160
Web App Security
alepore
1
86
Ruby and Rails
alepore
0
130
Ruby Introduction
alepore
0
110
E-commerce is hard
alepore
2
250
Ruby-lang.org
alepore
0
120
Other Decks in Programming
See All in Programming
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
160
JAWS-UG 東京支部が始める、JAWS-UG支部コラボ / JAWS-UG lunchtime LT Collaboration
y0hgi
0
210
Findy - エンジニア向け会社紹介/Findy Company Deck
findyinc
6
400k
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
350
Verilogで学ぶCPU自作入門
uyuki234
8
4.1k
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
470
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
350
最近”作らせてる” ローカルAIアプリの話
akit37
0
430
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
280
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.5k
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
8
2k
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
15
8.1k
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
Test your architecture with Archunit
thirion
2
2.4k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
420
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.2k
New Earth Scene 8
popppiees
4
2.7k
How STYLIGHT went responsive
nonsquared
100
6.3k
Marketing to machines
jonoalderson
1
5.9k
Discover your Explorer Soul
emna__ayadi
2
1.3k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Transcript
E-commerce world
Me • Alessandro Lepore • from Fano (PU) • @alelepore
/ https://github.com/alepore • Freelance Web Developer @ freego • Longtime Open Source && Linux user • Perl => PHP => Ruby (Rails) => …Elixir?
The e-commerce market is growing, and it’s growing fast. Source:
https://blog.rjmetrics.com/2015/02/04/the-five-indicators-of-breakout-ecommerce-growth/
e-commerce developer
None
One E-commerce, many components • Website, UI, Admin interface etc.
• Catalog, Variants • Checkout • Prices, Promotions, Discounts • Payments, Shipments • Taxes! • Extra: API? Multi Language? Mobile? • External integrations • Offline concepts online • Non dev stuff: marketing, SEO, Customer care etc.
? So? Platform? Framework? Some libraries? Start from scratch?
E-commerce Platforms market share (top 1M sites) Source: https://www.datanyze.com/
E-commerce in Ruby: Spree / Solidus
History (Spree) • 2007: Spree Commerce company • 2008: Spree
0.x • 2011: $1.5M funding • 2012: Spree 1.0 • 2013: Spree 2.0, Wombat • 2014: $5M funding • 2015: Spree 3.0 • 2016: Spree 3.1?
History (Solidus) • Stembolt, bonobos.com • 2014: Spree private fork
• 2015: Solidus 1.0, 1.1 • 2016: Solidus 1.2, Solidus Conf Toronto
Spree / Solidus • 100% Open Source and free •
Small core team + community • Github, mailing list, chat • 17.000+ commits • 600+ contributors • 7.000+ github stars • 600 tests • BSD License
Technologies: Ruby • Programming language from Japan, 1995 • Object-oriented,
also functional and imperative • Dynamic, reflective, general-purpose • Influenced by Perl, Smalltalk, Eiffel, Ada, and Lisp
Technologies: Rails • Full stack MVC web application framework •
“Optimised for programmer happiness” • “Convention over Configuration” • More here: http://rubyonrails.org/doctrine/
Technologies: Spree • Rails engine • Common gems • Good
Rails skills required! • MySQL or PostgreSQL • spree_core • spree_frontend • spree_backend • spree_api • spree_auth_devise
Features • Auth, Users, Addresses • Orders, Adjustments, • Payment
Methods, Payments • Products, Variants, Options • Taxonomies • Taxes, Tax Categories, Tax Rates • Stock Management • (Split) Shipments • Promotions, Rules, Actions • I18N, Translations • Mid/big size projects?
Extensions • All on Github • Just Ruby gems •
Rails engines • Easy to develop • github.com/spree-contrib • spree_gateway • spree_i18n • spree_print_invoice • spree_multi_currency • spree_digital • better_spree_paypal_express • spree_shared • spree_editor • spree_reviews • spree_wishlist • spree_recently_viewed • spree_related_products • spree_sitemap • spree_elasticsearch • … and many moar
Screenshots
Screenshots
The bad parts • “Checkout hell” • Extension points •
Promotions • …moar
Production deploy • Normal Rails deploy • capistrano, git •
Linux + Nginx/Apache or Heroku • RAM!
Use cases • 50.000+ sites? • https://www.godaddy.com/websites/online-store • https://bonobos.com/ •
https://ayr.com • https://www.evagardenshop.com/ • https://www.myfashionhit.com/
Links • https://github.com/solidusio/solidus • http://solidus.io/ • https://github.com/spree/spree • https://spreecommerce.com/ •
http://capistranorb.com/ • http://rubyonrails.org/doctrine/
None