SlideShare a Scribd company logo
1 of 20
Download to read offline
Creating a Facebook Clone - Part II
Goals
✦Native UI Look
✦Screen flow
✦Tablet & Orientation
✦Plain Text Password
© Codename One 2017 all rights reserved
Goals
✦Signup
✦Newsfeed
✦Friends
✦Notifications
✦Settings
✦Text Posts
© Codename One 2017 all rights reserved
✦Picture posts
✦Video posts
✦Camera
✦Simple search
✦Likes
✦Comments
What we Won't Cover
✦Events
✦Camera Special Effects
✦Additional apps
✦Find friends & complex searches
✦Hashtags & complex posts
✦Privacy & Visibility
✦Pretty much all the details
© Codename One 2017 all rights reserved
Architecture Strategy
✦Use Properties
✓ Store data
✓ Transmit data
✓ Automatically create UI's from data 

✦UI Controller
© Codename One 2017 all rights reserved
© Codename One 2017 all rights reserved
Mockup
CSS
✦CSS Is Changing
✦https://github.com/shannah/cn1-css
© Codename One 2017 all rights reserved
Facebook Logo & Gender Icons
✦Icon Font
✦fontello.com
✦Add Facebook Logo & Gender Icons
© Codename One 2017 all rights reserved
Facebook Logo & Gender Icons
© Codename One 2017 all rights reserved
Facebook Logo & Gender Icons
© Codename One 2017 all rights reserved
Facebook Logo & Gender Icons
© Codename One 2017 all rights reserved
#Constants {
includeNativeBool: true;
scrollVisibleBool: false;
labelGap: 2;
}
StatusBar {
background: transparent;
}
Container {
background: transparent;
}
Default {
color: black;
font-family: "native:MainLight";
font-size: 2.6mm;
}
@font-face {
font-family: "facebook";
src: url(res/facebook.ttf);
}
theme.css
#Constants {
includeNativeBool: true;
scrollVisibleBool: false;
labelGap: 2;
}
StatusBar {
background: transparent;
}
Container {
background: transparent;
}
Default {
color: black;
font-family: "native:MainLight";
font-size: 2.6mm;
}
@font-face {
font-family: "facebook";
src: url(res/facebook.ttf);
}
theme.css
#Constants {
includeNativeBool: true;
scrollVisibleBool: false;
labelGap: 2;
}
StatusBar {
background: transparent;
}
Container {
background: transparent;
}
Default {
color: black;
font-family: "native:MainLight";
font-size: 2.6mm;
}
@font-face {
font-family: "facebook";
src: url(res/facebook.ttf);
}
theme.css
#Constants {
includeNativeBool: true;
scrollVisibleBool: false;
labelGap: 2;
}
StatusBar {
background: transparent;
}
Container {
background: transparent;
}
Default {
color: black;
font-family: "native:MainLight";
font-size: 2.6mm;
}
@font-face {
font-family: "facebook";
src: url(res/facebook.ttf);
}
theme.css
#Constants {
includeNativeBool: true;
scrollVisibleBool: false;
labelGap: 2;
}
StatusBar {
background: transparent;
}
Container {
background: transparent;
}
Default {
color: black;
font-family: "native:MainLight";
font-size: 2.6mm;
}
@font-face {
font-family: "facebook";
src: url(res/facebook.ttf);
}
theme.css
#Constants {
includeNativeBool: true;
scrollVisibleBool: false;
labelGap: 2;
}
StatusBar {
background: transparent;
}
Container {
background: transparent;
}
Default {
color: black;
font-family: "native:MainLight";
font-size: 2.6mm;
}
@font-face {
font-family: "facebook";
src: url(res/facebook.ttf);
}
theme.css
#Constants {
includeNativeBool: true;
scrollVisibleBool: false;
labelGap: 2;
}
StatusBar {
background: transparent;
}
Container {
background: transparent;
}
Default {
color: black;
font-family: "native:MainLight";
font-size: 2.6mm;
}
@font-face {
font-family: "facebook";
src: url(res/facebook.ttf);
}
theme.css
Container {
background: transparent;
}
Default {
color: black;
font-family: "native:MainLight";
font-size: 2.6mm;
}
@font-face {
font-family: "facebook";
src: url(res/facebook.ttf);
}
IconFont {
font-family: "facebook";
font-size: 13mm;
color: white;
background-color: transparent;
}
Form {
background-color: white;
margin: 0px;
padding: 0px;
}
theme.css
Container {
background: transparent;
}
Default {
color: black;
font-family: "native:MainLight";
font-size: 2.6mm;
}
@font-face {
font-family: "facebook";
src: url(res/facebook.ttf);
}
IconFont {
font-family: "facebook";
font-size: 13mm;
color: white;
background-color: transparent;
}
Form {
background-color: white;
margin: 0px;
padding: 0px;
}
theme.css

More Related Content

Similar to Creating a Facebook Clone - Part II.pdf

3 coding101 fewd_lesson3_your_first_website 20210105
3 coding101 fewd_lesson3_your_first_website 202101053 coding101 fewd_lesson3_your_first_website 20210105
3 coding101 fewd_lesson3_your_first_website 20210105
John Picasso
 
Theme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copieTheme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copie
Rafaela Souza
 
Theme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copieTheme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copie
Rafaela Souza
 

Similar to Creating a Facebook Clone - Part II.pdf (20)

Modern Perl
Modern PerlModern Perl
Modern Perl
 
Building a Single Page Application using Ember.js ... for fun and profit
Building a Single Page Application using Ember.js ... for fun and profitBuilding a Single Page Application using Ember.js ... for fun and profit
Building a Single Page Application using Ember.js ... for fun and profit
 
Web Fonts: Why Bother?
Web Fonts: Why Bother?Web Fonts: Why Bother?
Web Fonts: Why Bother?
 
Creating a Whatsapp Clone - Part VII.pdf
Creating a Whatsapp Clone - Part VII.pdfCreating a Whatsapp Clone - Part VII.pdf
Creating a Whatsapp Clone - Part VII.pdf
 
Creating a Whatsapp Clone - Part VI.pdf
Creating a Whatsapp Clone - Part VI.pdfCreating a Whatsapp Clone - Part VI.pdf
Creating a Whatsapp Clone - Part VI.pdf
 
The Future of CSS
The Future of CSSThe Future of CSS
The Future of CSS
 
Advanced dreamweaver
Advanced dreamweaverAdvanced dreamweaver
Advanced dreamweaver
 
Creating a Facebook Clone - Part XVII.pdf
Creating a Facebook Clone - Part XVII.pdfCreating a Facebook Clone - Part XVII.pdf
Creating a Facebook Clone - Part XVII.pdf
 
Typography For The Web
Typography For The WebTypography For The Web
Typography For The Web
 
3 coding101 fewd_lesson3_your_first_website 20210105
3 coding101 fewd_lesson3_your_first_website 202101053 coding101 fewd_lesson3_your_first_website 20210105
3 coding101 fewd_lesson3_your_first_website 20210105
 
ID01 Week 3
ID01 Week 3ID01 Week 3
ID01 Week 3
 
The Future Of CSS
The Future Of CSSThe Future Of CSS
The Future Of CSS
 
CSS Extenders
CSS ExtendersCSS Extenders
CSS Extenders
 
Flex User Group - Skinning Presentation
Flex User Group - Skinning PresentationFlex User Group - Skinning Presentation
Flex User Group - Skinning Presentation
 
Gates Toorcon X New School Information Gathering
Gates Toorcon X New School Information GatheringGates Toorcon X New School Information Gathering
Gates Toorcon X New School Information Gathering
 
Image Converter script for PNG to JPG & JPG to PNG.pdf
Image Converter script for PNG to JPG & JPG to PNG.pdfImage Converter script for PNG to JPG & JPG to PNG.pdf
Image Converter script for PNG to JPG & JPG to PNG.pdf
 
Wordless, stop writing WordPress themes like it's 1998
Wordless, stop writing WordPress themes like it's 1998Wordless, stop writing WordPress themes like it's 1998
Wordless, stop writing WordPress themes like it's 1998
 
Getting Started with Sass & Compass
Getting Started with Sass & CompassGetting Started with Sass & Compass
Getting Started with Sass & Compass
 
Theme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copieTheme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copie
 
Theme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copieTheme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copie
 

More from ShaiAlmog1

More from ShaiAlmog1 (20)

The Duck Teaches Learn to debug from the masters. Local to production- kill ...
The Duck Teaches  Learn to debug from the masters. Local to production- kill ...The Duck Teaches  Learn to debug from the masters. Local to production- kill ...
The Duck Teaches Learn to debug from the masters. Local to production- kill ...
 
create-netflix-clone-06-client-ui.pdf
create-netflix-clone-06-client-ui.pdfcreate-netflix-clone-06-client-ui.pdf
create-netflix-clone-06-client-ui.pdf
 
create-netflix-clone-01-introduction_transcript.pdf
create-netflix-clone-01-introduction_transcript.pdfcreate-netflix-clone-01-introduction_transcript.pdf
create-netflix-clone-01-introduction_transcript.pdf
 
create-netflix-clone-02-server_transcript.pdf
create-netflix-clone-02-server_transcript.pdfcreate-netflix-clone-02-server_transcript.pdf
create-netflix-clone-02-server_transcript.pdf
 
create-netflix-clone-04-server-continued_transcript.pdf
create-netflix-clone-04-server-continued_transcript.pdfcreate-netflix-clone-04-server-continued_transcript.pdf
create-netflix-clone-04-server-continued_transcript.pdf
 
create-netflix-clone-01-introduction.pdf
create-netflix-clone-01-introduction.pdfcreate-netflix-clone-01-introduction.pdf
create-netflix-clone-01-introduction.pdf
 
create-netflix-clone-06-client-ui_transcript.pdf
create-netflix-clone-06-client-ui_transcript.pdfcreate-netflix-clone-06-client-ui_transcript.pdf
create-netflix-clone-06-client-ui_transcript.pdf
 
create-netflix-clone-03-server.pdf
create-netflix-clone-03-server.pdfcreate-netflix-clone-03-server.pdf
create-netflix-clone-03-server.pdf
 
create-netflix-clone-04-server-continued.pdf
create-netflix-clone-04-server-continued.pdfcreate-netflix-clone-04-server-continued.pdf
create-netflix-clone-04-server-continued.pdf
 
create-netflix-clone-05-client-model_transcript.pdf
create-netflix-clone-05-client-model_transcript.pdfcreate-netflix-clone-05-client-model_transcript.pdf
create-netflix-clone-05-client-model_transcript.pdf
 
create-netflix-clone-03-server_transcript.pdf
create-netflix-clone-03-server_transcript.pdfcreate-netflix-clone-03-server_transcript.pdf
create-netflix-clone-03-server_transcript.pdf
 
create-netflix-clone-02-server.pdf
create-netflix-clone-02-server.pdfcreate-netflix-clone-02-server.pdf
create-netflix-clone-02-server.pdf
 
create-netflix-clone-05-client-model.pdf
create-netflix-clone-05-client-model.pdfcreate-netflix-clone-05-client-model.pdf
create-netflix-clone-05-client-model.pdf
 
Creating a Whatsapp Clone - Part II.pdf
Creating a Whatsapp Clone - Part II.pdfCreating a Whatsapp Clone - Part II.pdf
Creating a Whatsapp Clone - Part II.pdf
 
Creating a Whatsapp Clone - Part IX - Transcript.pdf
Creating a Whatsapp Clone - Part IX - Transcript.pdfCreating a Whatsapp Clone - Part IX - Transcript.pdf
Creating a Whatsapp Clone - Part IX - Transcript.pdf
 
Creating a Whatsapp Clone - Part II - Transcript.pdf
Creating a Whatsapp Clone - Part II - Transcript.pdfCreating a Whatsapp Clone - Part II - Transcript.pdf
Creating a Whatsapp Clone - Part II - Transcript.pdf
 
Creating a Whatsapp Clone - Part V - Transcript.pdf
Creating a Whatsapp Clone - Part V - Transcript.pdfCreating a Whatsapp Clone - Part V - Transcript.pdf
Creating a Whatsapp Clone - Part V - Transcript.pdf
 
Creating a Whatsapp Clone - Part IV - Transcript.pdf
Creating a Whatsapp Clone - Part IV - Transcript.pdfCreating a Whatsapp Clone - Part IV - Transcript.pdf
Creating a Whatsapp Clone - Part IV - Transcript.pdf
 
Creating a Whatsapp Clone - Part IV.pdf
Creating a Whatsapp Clone - Part IV.pdfCreating a Whatsapp Clone - Part IV.pdf
Creating a Whatsapp Clone - Part IV.pdf
 
Creating a Whatsapp Clone - Part I - Transcript.pdf
Creating a Whatsapp Clone - Part I - Transcript.pdfCreating a Whatsapp Clone - Part I - Transcript.pdf
Creating a Whatsapp Clone - Part I - Transcript.pdf
 

Recently uploaded

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern Enterprise
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational Performance
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software Engineering
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 

Creating a Facebook Clone - Part II.pdf

  • 1. Creating a Facebook Clone - Part II
  • 2. Goals ✦Native UI Look ✦Screen flow ✦Tablet & Orientation ✦Plain Text Password © Codename One 2017 all rights reserved
  • 3. Goals ✦Signup ✦Newsfeed ✦Friends ✦Notifications ✦Settings ✦Text Posts © Codename One 2017 all rights reserved ✦Picture posts ✦Video posts ✦Camera ✦Simple search ✦Likes ✦Comments
  • 4. What we Won't Cover ✦Events ✦Camera Special Effects ✦Additional apps ✦Find friends & complex searches ✦Hashtags & complex posts ✦Privacy & Visibility ✦Pretty much all the details © Codename One 2017 all rights reserved
  • 5. Architecture Strategy ✦Use Properties ✓ Store data ✓ Transmit data ✓ Automatically create UI's from data 
 ✦UI Controller © Codename One 2017 all rights reserved
  • 6. © Codename One 2017 all rights reserved Mockup
  • 8. Facebook Logo & Gender Icons ✦Icon Font ✦fontello.com ✦Add Facebook Logo & Gender Icons © Codename One 2017 all rights reserved
  • 9. Facebook Logo & Gender Icons © Codename One 2017 all rights reserved
  • 10. Facebook Logo & Gender Icons © Codename One 2017 all rights reserved
  • 11. Facebook Logo & Gender Icons © Codename One 2017 all rights reserved
  • 12. #Constants { includeNativeBool: true; scrollVisibleBool: false; labelGap: 2; } StatusBar { background: transparent; } Container { background: transparent; } Default { color: black; font-family: "native:MainLight"; font-size: 2.6mm; } @font-face { font-family: "facebook"; src: url(res/facebook.ttf); } theme.css
  • 13. #Constants { includeNativeBool: true; scrollVisibleBool: false; labelGap: 2; } StatusBar { background: transparent; } Container { background: transparent; } Default { color: black; font-family: "native:MainLight"; font-size: 2.6mm; } @font-face { font-family: "facebook"; src: url(res/facebook.ttf); } theme.css
  • 14. #Constants { includeNativeBool: true; scrollVisibleBool: false; labelGap: 2; } StatusBar { background: transparent; } Container { background: transparent; } Default { color: black; font-family: "native:MainLight"; font-size: 2.6mm; } @font-face { font-family: "facebook"; src: url(res/facebook.ttf); } theme.css
  • 15. #Constants { includeNativeBool: true; scrollVisibleBool: false; labelGap: 2; } StatusBar { background: transparent; } Container { background: transparent; } Default { color: black; font-family: "native:MainLight"; font-size: 2.6mm; } @font-face { font-family: "facebook"; src: url(res/facebook.ttf); } theme.css
  • 16. #Constants { includeNativeBool: true; scrollVisibleBool: false; labelGap: 2; } StatusBar { background: transparent; } Container { background: transparent; } Default { color: black; font-family: "native:MainLight"; font-size: 2.6mm; } @font-face { font-family: "facebook"; src: url(res/facebook.ttf); } theme.css
  • 17. #Constants { includeNativeBool: true; scrollVisibleBool: false; labelGap: 2; } StatusBar { background: transparent; } Container { background: transparent; } Default { color: black; font-family: "native:MainLight"; font-size: 2.6mm; } @font-face { font-family: "facebook"; src: url(res/facebook.ttf); } theme.css
  • 18. #Constants { includeNativeBool: true; scrollVisibleBool: false; labelGap: 2; } StatusBar { background: transparent; } Container { background: transparent; } Default { color: black; font-family: "native:MainLight"; font-size: 2.6mm; } @font-face { font-family: "facebook"; src: url(res/facebook.ttf); } theme.css
  • 19. Container { background: transparent; } Default { color: black; font-family: "native:MainLight"; font-size: 2.6mm; } @font-face { font-family: "facebook"; src: url(res/facebook.ttf); } IconFont { font-family: "facebook"; font-size: 13mm; color: white; background-color: transparent; } Form { background-color: white; margin: 0px; padding: 0px; } theme.css
  • 20. Container { background: transparent; } Default { color: black; font-family: "native:MainLight"; font-size: 2.6mm; } @font-face { font-family: "facebook"; src: url(res/facebook.ttf); } IconFont { font-family: "facebook"; font-size: 13mm; color: white; background-color: transparent; } Form { background-color: white; margin: 0px; padding: 0px; } theme.css