You are on page 1of 17

SILABUS

SEKOLAH
FULLSTACK
Copyright :
Sekolah Fullstack - www.sekolahfullstack.com
PT. Cilsy Fiolution Indonesia - www.cilsyfiolution.com

Siapapun dilarang untuk menggunakan, mengkopi, menyebarluaskan, menjual sebagian


atau seluruh isi dokumen ini tanpa seizin pemilik yaitu PT. Cilsy Fiolution Indonesia. Konten
Silabus ini adalah hak cipta dari PT. Cilsy Fiolution Indonesia dan dilindungi oleh Undang-
Undang.
Sekolah Fullstack - Student Requirements
Fullstack JS Developer, Web Developer

Date : 2020
Based
on : SnapHunt, Mitrais, Talkabot

After graduate from bootcamp, Student should be able to do these jobs :


Code Job Description
JD1 Writing well-designed, testable and efficient code.
JD2 Working as a part of a dynamic team to deliver winning products.

JD3 Providing code documentation and other inputs to technical documents.


Staying updated with development of new technology and web applications to support
JD4 continuous improvement.
JD5 Troubleshooting and debugging to optimise performance.
JD6 Leading the design, creation, and implementation of a suite of software.
JD7 Working with graphic designers to enhance web design features
Working on all parts of the code-base and contributing to every stage of the product
JD8 development cycle.

And student should have these qualifications :


Code Qualifications
Q1 Familiarity with Agile development methodologies
Q2 Experience with software design and development in a test-driven environment
Q3 Comfortable with relational and non-relational database (Mysql)
Q4 Familiar with code versioning tools such as : GIT
Q5 Deep knowledge of HTML5 and CSS3 is a must
Q6 Experience working with 3rd party library and REST API
Q7 Strong profieciency in javascript, including DOM manipulation and javascript object model
Q8 Having experience in javascript framework such as : React JS
Having experience in backend development using NodeJS and its 3rd party library
Q9 You are a self-starter and demonstrate a high level of resilience
Q10 Ability to learn new languages and technologies

Q11 Excellent communication skills


Q12 Resourcefulness and troubleshooting aptitude

Judul Course 1 : Belajar membuat tampilan web


dengan HTML + CSS (Sisi Frontend)
Course ini bertujuan agar murid muncul ketertarikan dalam ngoding, karena berhasil
membuat tampilan web sederhana (apa yang mereka code, ada wujudnya).

Week 1
Section 1 : Why Fullstack ? Why now?

● Materi : Masalah yang dipecahkan oleh Fullstack Developer


● Materi : Gambaran pekerjaan seorang Fullstack Developer
● Materi : Peluang Karir Fullstack Developer
● Materi : Apa saja yang harus dimiliki untuk menjadi seorang Fullstack Developer
yang baik.
● Materi : Roadmap belajar as a Fullstack Developer

Section 2 : Hello HTML

● Materi : Intro HTML


● Materi : Editor dan Browser
● Materi : Basic HTML
● Latihan : Membuat File HTML
● Materi : Doctype
● Materi : Basic Tag
● Small Project : Membuat Halaman Sederhana

Section 3 : CodeSandbox + Element

● Materi : Intro & Tujuan CodeSandbox


● Materi : Membuat akun CodeSandbox
● Materi : HTML pada CodeSandbox
● Latihan : Membuat halaman HTML pada CodeSandbox
● Materi : Tag Vs Element
● Materi : List pada HTML
● Latihan : Membuat List
● Materi : Table pada HTML
● Latihan : Membuat Table
● Small Project : Membuat daftar menu

Section 4 : How to be a Good Engineer

● Materi : Bad Engineer vs Good Engineer


● Materi : Cara bertanya yang baik agar bisa dijawab
● Materi : Cara googling yang baik
● Materi : Cara belajar yang baik
● Materi : Cara bertanya yang baik
● Materi : Attitude yang harus dimiliki oleh seorang good engineer
● Materi : Sebaiknya bisa nulis & baca bahasa inggris
● Materi : Have a dream!
● Tugas : Speaking Drill

Section 5 : Attributes

● Materi : Intro HTML Attributes


● Materi : Attribute title & href
● Latihan : Membuat Link
● Materi : Attribute src & alt
● Latihan : Memasukan Gambar
● Materi : Attribute sytle
● Latihan : Menggunakan style inline
● Materi : Mengenal lebih banyak attributes
● Small Project : Membuat Katalog

Section 6 : Formatting & Form

● Materi : Text Formatting


● Materi : Text input & Text Area
● Latihan : Membuat text input
● Materi : Check Box dan Radio Box
● Latihan : Membuat Check Box dan Radio Box
● Materi : Selection Box
● Small Project : Membuat Form Isian Data Diri

Section 7 : Memoles HTML

● Materi : HTML CSS


● Latihan : Membuat halaman HTML dengan CSS
● Latihan : Membuat halaman HTML Responsive
● Latihan : Membuat halaman HTML dengan Javascript

Section 8 : HTML 5

● Materi : Intro HTML 5


● Materi : Style Guide
● Materi : HTML Layout
● Latihan : Membuat halaman dengan tag layout
● Materi : HTML Media
● Small Project : Membuat halaman seperti youtube

*Setelah Section 2, Tugas akan dikerjakan pada akun CodeSandbox masing-masing.


Week 2
Section 9 : Hello CSS

● Materi : Intro CSS


● Materi : CSS Syntax
● Materi : Penempatan CSS
● Latihan : Membuat halaman HTML dengan CSS
● Materi : Color dan Background
● Materi : CSS Box
● Materi : Text dan Font
● Latihan : Box dengan CSS

Section 10 : Menghias dengan CSS

● Materi : Text CSS


● Materi : Font CSS
● Latihan : Menghias Text
● Materi : Icon pada CSS
● Materi : Link pada CSS
● Latihan : Menghias Link
● Materi : Lists CSS
● Materi : Table CSS
● Latihan : Membuat Daftar Menu dihias oleh CSS

Section 11 : Mengatur Posisi dengan CSS

● Materi : Posisi
● Latihan : Mengatur posisi elemen
● Materi : Overflow
● Materi :Float
● Materi: Alignment
● Latihan : Mengatur posisi gambar dan text
● Mini Project : Membuat Artikel

Section 12 : Image CSS

● Materi : Image Gallery


● Materi : Image Sprites
● Materi : Opacity
● Materi : Forms

Section 13 : Tambahan CSS

● Materi : Pseudo-class
● Materi : Pseudo-elemen
● Materi : Selector
● Materi : Navbar
● Materi : Drop Down
Section 14 : CSS Advanced (1)

● Materi : Rounded Corners


● Materi : Border Images
● Materi : Background
● Materi : Colors
● Materi : Gradients
● Materi : Shadows

Section 15 : CSS Advanced (2)

● Materi : Text Effect


● Materi : Web Fonts
● Materi : Transitions
● Materi : Animations
● Materi : Tooltips
● Materi : Style Images

Section 16 : CSS Advanced (3)

● Materi : Object Fit


● Materi : Buttons
● Materi : Pagination
● Materi : Variables
● Materi : Flexbox
● Materi : Media Queries

Section 17 : CSS Responsive

● Materi : HTML Responsive


● Materi : RWD Intro
● Materi : RWD Viewport
● Materi : RWD Grid View
● Materi : RWD Media Queries
● Materi : RWD Images
● Materi : RWD Videos
● Materi : RWD Frameworks
● Materi : RWD Templates

Section 18 : CSS Grid

● Materi : Grid Intro


● Materi : Grid Container
● Materi : Grid Item
Judul Course 2 : Belajar Dasar JavaScript (Sisi
Frontend + Backend)
Disini murid akan diperkuat dari sisi logika, dan juga dasar-dasar sintaks javascriptnya. Agar
ketika masuk ke React dan Nodejs sudah tidak bingung lagi.

Week 3
Section 19 : Hello JavaScript

● Materi : JavaScript Intro


● Materi : Menghubungkan file Javascript
● Materi : ‘Hello World’ menggunakan Javascript
● Latihan : Membuat Hello World dengan Javascript
● Materi : Variabel
● Materi : Tipe Data
● Latihan : Membuat Variabel dengan Tipe Data
● Materi : Operator
● Materi : Aritmatika
● Materi : Assignment
● Latihan : Perhitungan Aritmatika

Section 20 : Fungsi, Objek & Event

● Materi : Function (1) - Struktur


● Latihan : Menampilkan text dari fungsi
● Materi : Function (2) - Parameter & Argument
● Materi : Function (3) - Return Value
● Latihan : Membuat fungsi menghitung bangun datar
● Materi : JavaScript Object
● Materi : JavaScript Event
● Latihan : Membuat button dengan event

Section 21 : String & Number Methods

● Materi : Strings
● Materi : String Methods
● Latihan : String Methods
● Materi : Numbers
● Materi : Number Methods
● Latihan : Number Methods

Section 22 : Dunia Array!

● Materi : Arrays
● Latihan : Membuat Array
● Materi : Array Methods
● Latihan : Manipulasi Array
● Materi : Array Sort
● Latihan : Sorting Array
● Materi : Array Iteration
● Latihan : Array Iteration

Section 23 : JavaScript Condition

● Materi : if else
● Latihan : Membuat logika dengan kondisi if else
● Materi : multiple if
● Latihan : Membuat logika dengan multi if
● Materi : Switch
● Latihan : membuat logika dengan switch
● Mini Project : membuat program konversi nilai ke index A-E

Section 24 : Loop you so much

● Materi : For
● Latihan : Pengulangan angka dengan for
● Materi : While
● Latihan : Pengulangan angka dengan while
● Materi : Break & Continue
● Latihan : Menghentikan Loop
● Materi : Akses Array dengan loop
● Latihan : Mengakses array

Section 25 : JavaScript DOM

● Materi : Intro JavaScript DOM


● Materi : DOM Method
● Materi : DOM Element
● Latihan : Memanipulasi Element pada HTML dengan Javascript DOM (1)
● Materi : HTML Javascript
● Materi : DOM HTML
● Materi : DOM CSS
● Materi : DOM Event
● Latihan : Memanipulasi Element pada HTML dengan Javascript DOM (2)

Week 4
Section 26 : ES6

● Materi : Introduction es6


● Materi : const and let
● Latihan : membuat variable menggunakan const dan let
● Materi : template string
● Latihan : template string challenge
● Materi : foreach helper
● Latihan : membuat looping data menggunakan foreach
● Materi : map helper
● Latihan : map data menggunakan fungsi map
● Materi : filter helper
● Latihan : memfilter array menggunakan filter helpers
● Materi : reduce helper
● Latihan : reducing array menggunakan reduce
● Materi : fat arrow function
● Latihan : membuat arrow function
● Materi : object literal
● Latihan : membuat object literal
● Materi : classes
● Latihan : membuat class pada es6
● Materi: Import & Export Module
● Materi : destructuring
● Latihan : membuat destructuring pada es6
● Materi : promise & fetch
● Latihan : membuat promise pada es 6

Judul Course 3 : Memahami Git (Umum)


Section 27 : Understanding Git & Flow Development
● Materi : Mengenal Git & Kenapa wajib paham Git, kenapa pentingnya kolaborasi
dengan sesama Programmer
● Materi : Command & Konsep dasar Git
● Materi : git clone, git add, git commit, git push
● Materi : git status, commit message yang baik
● Materi : Hands on untuk membuat aplikasi hello world dan push ke github
● Materi : git reset -> --soft, --hard
● Materi : Hands on untuk menerapkan reset ke aplikasi hello world
● Materi : git pull
● Materi : Hands on membuat aplikasi hello nama di branch yang baru
● Materi : skill branching -> add, delete, stash
● Materi : merge branch to branch master
● Materi : stash dan fix conflict ketika di pull dari branch yang lainnya
● Materi : Flow development di dalam sebuah tim
● Materi : Mengenal Local - Staging - Production
● Tugas : Melakukan git merge & forking antara local, staging, production
● Tugas : Belajar mengetik dengan cepat pada https://play.typeracer.com/ setiap hari
sebanyak 3x.
● Tugas : Membuat Blogpost dengan tema apapun yang berkaitan dengan
pemrograman komputer setiap minggu dan sabtu diperiksa.
● Tugas : Melakukan speaking drill setiap hari sabtu

Small Project
PT. ABC meminta bantuan terhadap 2 Fullstack Developer untuk melakukan Slicing minimal
3 Page untuk Company Profile. Silahkan berkolaborasi menggunakan Git dengan 1 orang
rekanmu (bagi-bagi tugas) untuk melakukan pembuatan Project ini (HTML, CS, JS)

Judul Course 4 : Membangun tampilan Web dengan


React
Course ini akan fokus pada pemahaman dasar-dasar React sampai bisa, lalu akan langsung
diajak membuat tampilan sisi frontend untuk aplikasi sederhana. Disini yang penting agar
murid masih cukup tertarik utk ngoding, karena apa yang mereka coding dengan React ada
wujud tampilannya.

Week 5
Section 28 : Belajar sintaks-sintaks dasar React & JSX

● Materi : The Build Workflow


● Materi : Using Create React App
● Materi : Understanding the Folder Structure
● Materi : Understanding Component Basics
● Materi : Understanding JSX
● Materi : JSX Restrictions
● Materi : Creating a Functional Component
● Materi : Components & JSX Cheat Sheet
● Materi : Working with Components & Re-Using Them
● Materi : Outputting Dynamic Content
● Materi : Working with Props
● Materi : Understanding the Children Property
● Materi : Understanding & Using State
● Materi : Props & State
● Materi : Handling Events with Methods
● Materi : To Which Events Can You Listen?
● Materi : Manipulating the State
● Materi : Function Components Naming
● Materi : Stateless vs Stateful Components
● Materi : Passing Method References Between Components
● Materi : Adding Two Way Binding
● Materi : Adding Styling with Stylesheets
● Materi : Working with Inline Styles
● Latihan 1 : Study case 1 JSX
● Latihan 2 : Study case 2 JSX

Section 29 : Working with Lists & Conditional

● Materi : Module Introduction


● Materi : Rendering Content Conditionally
● Materi : Handling Dynamic Content "The JavaScript Way"
● Materi : Outputting Lists (Intro)
● Materi : Outputting Lists
● Materi : Lists & State
● Materi : Updating State Immutably
● Materi : Lists & Keys
● Materi : Flexible Lists
● Latihan 1 : Study case 1 Lists
● Latihan 2 : Study case 2 Lists

Section 30 : Styling React Components & Elements

● Materi : Injection CSS LESS/SASS


● Latihan 1 : Study case 1 Styling React
● Latihan 2 : Study case 2 Styling React

Section 31 : Debugging React

● Materi : Understanding Error Messages


● Materi : Finding Logical Errors by using Dev Tools & Sourcemaps
● Materi : Working with the React Developer Tools
● Materi : Using Error Boundaries (React 16+)
● Latihan 1 : Study case 1 Debugging
● Latihan 2 : Study case 2 Debugging

Week 6
Section 32 : Diving into Components & React Internals

● Materi : A Better Project Structure


● Materi : Splitting an App Into Components
● Materi : Comparing Stateless and Stateful Components (Ini hanya pengenalan saja,
pada saat pengajaran diajarkan stateful dulu)
● Materi : Class-based vs Functional Components
● Materi : class Component Lifecycle Overview
● Materi : Component Creation Lifecycle in Action
● Materi : Component Update Lifecycle (for props Changes)
● Materi : Component Update Lifecycle (for state Changes)
● Materi : Using shouldComponentUpdate for Optimization
● Materi : When should you optimize?
● Materi : PureComponents instead of shouldComponentUpdate
● Materi : How React Updates the DOM
● Materi : Rendering Adjacent JSX Elements
● Materi : Using React.Fragment
● Materi : Passing Unknown Props
● Materi : Setting State Correctly
● Materi : Using PropTypes
● Materi : Using Refs
● Materi : Understanding Prop Chain Problems
● Materi : Using the Context API
● Latihan 1 : Study case 1
● Latihan 2 : Study case 2

Section 32-new : Introduction to React Routing

● Materi : Pengenalan Routing di React


● Materi : Dasar React Routing - Routing and SPAs
● Materi : Dasar React Routing - Setting Up Links
● Materi : Dasar React Routing - Setting Up the Router Package
● Materi : Dasar React Routing - react-router vs react-router-dom
● Materi : Dasar React Routing - Preparing the Project For Routing
● Materi : Dasar React Routing - Setting Up and Rendering Routes
● Materi : Dasar React Routing - Rendering Components for Routes
● Materi : Dasar React Routing - Switching Between Pages
● Materi : Dasar React Routing - Using Links to Switch Pages
● Materi : Dasar React Routing - Using Routing-Related Props
● Materi : Dasar React Routing - The "withRouter" HOC & Route Props
● Materi : Dasar React Routing - Absolute vs Relative Paths
● Materi : Dasar React Routing - Absolute vs Relative Paths (Article)
● Materi : Dasar React Routing - Styling the Active Route
● Materi : Dasar React Routing - Passing Route Parameters
● Materi : Dasar React Routing - Extracting Route Parameters
● Materi : Dasar React Routing - Parsing Query Parameters & the Fragment
● Materi : Dasar React Routing - Using Switch to Load a Single Route
● Materi : Dasar React Routing - Navigating Programmatically
● Materi : Dasar React Routing - Understanding Nested Routes
● Materi : Dasar React Routing - Creating Dynamic Nested Routes
● Materi : Dasar React Routing - Redirecting Requests
● Materi : Dasar React Routing - Conditional Redirects
● Materi : Dasar React Routing - Using the History Prop to Redirect (Replace)
● Materi : Dasar React Routing - Working with Guards
● Materi : Dasar React Routing - Handling the 404 Case (Unknown Routes)
● Materi : Dasar React Routing - Loading Routes Lazily
● Materi : Dasar React Routing - Lazy Loading with React Suspense (16.6)
● Materi : Dasar React Routing - Routing and Server Deployment

Week 7-8
Section 33-new : Pengenalan React Redux

● Materi: Pengenalan React Redux


● Materi : Dasar React Redux - Understanding State
● Materi : Dasar React Redux - The Complexity of Managing State
● Materi : Dasar React Redux - Understanding the Redux Flow
● Materi : Dasar React Redux - Setting Up Reducer and Store
● Materi : Dasar React Redux - Dispatching Actions
● Materi : Dasar React Redux - Adding Subscriptions
● Materi : Dasar React Redux - Connecting React to Redux
● Materi : Dasar React Redux - Connecting the Store to React
● Materi : Dasar React Redux - Dispatching Actions from within the Component
● Materi : Dasar React Redux - Passing and Retrieving Data with Action
● Materi : Dasar React Redux - Switch-Case in the Reducer
● Materi : Dasar React Redux - Updating State Immutably
● Materi : Dasar React Redux - Updating Arrays Immutably
● Materi : Dasar React Redux - Immutable Update Patterns
● Materi : Dasar React Redux - Outsourcing Action Types
● Materi : Dasar React Redux - Combining Multiple Reducers
● Materi : Dasar React Redux - Understanding State Types
● Materi : Dasar React Redux - Combining Local UI State and Redux

Small Project
Murid harus sudah menyelesaikan seluruh tampilan static aplikasi toko online, serta
menyelesaikan tampilan-tampilan sisanya yang belum sebagai berikut :

1. Materi : Membuat Tampilan Add to Cart (User)


2. Materi : Membuat Tampilan Checkout (User)
3. Materi : Membuat Tampilan Payment (User)
4. Materi : Membuat Tampilan Konfirmasi Pembelian (User)
5. Materi : Membuat Tampilan Status Pembelian (User)

Murid harus berpartner dengan minimal 1 orang untuk menyelesaikan seluruh tampilan
diatas dan berkolaborasi melalui Git (silahkan bagi-bagi tugas).

Judul Course 5 : Belajar Membuat Sistem Backend


dengan NodeJS + Mysql
Disini akan fokus pada basic nodejs, database dan API. Agar murid paham bahwa yang
mereka buat sebelumnya masih statik, dan perlu diberikan sistem yang bagus agar bisa
bekerja. Setelah sudah paham dasar-dasarnya, maka akan langsung coba test membuat
sistem salah satu fitur aplikasi web toko buku online dan mengkoneksikan dengan bagian
Frontendnya.

Week 9
Section 34 : NodeJS Dasar

● Materi : How The Web Works


● Materi : Creating a Node Server
● Materi : Controlling the Node.js Process
● Materi : Understanding Requests
● Materi : Sending Responses
● Materi : Request & Response Headers
● Materi : Routing Requests
● Materi : Redirecting Requests
● Materi : Parsing Request Bodies
● Materi : Understanding Event Driven Code Execution
● Materi : Blocking and Non-Blocking Code
● Materi : Node.js - Looking Behind the Scenes
● Materi : Using the Node Modules System
● Materi : Time to Practice - The Basics

Section 35 : Improved Development Workflow and Debugging NodeJS

● Materi : Understanding NPM Scripts


● Materi : Installing 3rd Party Packages
● Materi : Global Features vs Core Modules vs Third-Party Modules
● Materi : Using Nodemon for Autorestarts
● Materi : Global & Local npm Packages
● Materi : Understanding different Error Types
● Materi : Finding & Fixing Syntax Errors
● Materi : Dealing with Runtime Errors
● Materi : Logical Errors
● Materi : Using the Debugger
● Materi : Restarting the Debugger Automatically After Editing our App
● Materi : Debugging Node.js in Visual Studio Code
● Materi : Changing Variables in the Debug Console

Week 11
Section 36 : Working with Express.js

● Materi : What is Express.js?


● Materi : Installing Express.js
● Materi : Adding Middleware
● Materi : How Middleware Works
● Materi : Express.js - Looking Behind the Scenes
● Materi : Handling Different Routes
● Materi : Time to Practice - Express.js
● Materi : Parsing Incoming Requests
● Materi : Limiting Middleware Execution to POST Requests
● Materi : Using Express Router
● Materi : Adding a 404 Error Page
● Materi : Filtering Paths
● Materi : Serving HTML, CSS, JS Pages
● Materi : Time to Practice - Navigation
Section 37 : MVC Design Pattern

● Materi : What is the MVC?


● Materi : Adding Controllers
● Materi : Adding Models
● Materi : Storing Data in Files Via the Model
● Materi : Fetching Data from Files Via the Model
● Materi : Adding Views with ejs template engine

Week 12
Section 38 : Understanding REST APIs

● Materi : What are REST APIs and why do we use Them?


● Materi : Accessing Data with REST APIs
● Materi : Understanding Routing & HTTP Methods
● Materi : REST APIs - The Core Principles
● Materi : Creating our REST API Project & Implementing the Route Setup
● Materi : Sending Requests & Responses and Working with Postman
● Materi : REST APIs, Clients & CORS Errors
● Materi : Sending POST Requests

Section 39 : Basic Database and ORM

● What is a database?
● SQL vs NoSQL
● What is ORM / ODM
● Setting up the model with MySQL
● Installing Sequelize
● Understanding Models & Relations
● Materi : Contoh menyelesaikan Backend CRUD kategori (Admin)

Section 40 : Praktek Dasar Mengkoneksikan Frontend ReactJS dengan Backend


NodeJS

● Materi : Mengkoneksikan Backend & Frontend CRUD

Small Project
Murid mampu membuat sebuah backend API dan menkoneksikannya dengan project yang
dibuat pada small project sebelumnya.

Week 13-16

Final Project
Murid mencoba mendevelop sebuah aplikasi mulai dari 0. Ide aplikasi disesuaikan dengan
kebutuhan dan inovasi dari para siswa. Disini siswa akan dibimbing oleh instruktur mulai dari
pembuatan alur program, proses inisialisasi project, logic program, pembuatan MVP, hingga
masuk ke tahap production. Project dilakukan secara berkelompok dan berkolaborasi
menggunakan Git.
Extras:

● Materi : Using the useState() Hook for State Manipulation


● Materi : Outlining the Problem Set
● Materi : Setting Styles Dynamically
● Materi : Setting Class Names Dynamically
● Materi : Adding and Using Radium
● Materi : Using Radium for Media Queries
● Materi : Introducing Styled Components
● Materi : More on Styled Components
● Materi : Styled Components & Dynamic Styles
● Materi : Working with CSS Modules
● Materi : CSS Modules & Media Queries
● Materi : More on CSS Modules

● Materi : Using useEffect() in Functional Components


● Materi : Controlling the useEffect() Behavior
● Materi : Cleaning up with Lifecycle Hooks & useEffect()
● Materi : Cleanup Work with useEffect() - Ex
● Materi : Higher Order Components (HOC) - Introduction
● Materi : Another Form of HOCs
● Materi : Optimizing Functional Components with React.memo()
● Materi : Introduction Event Loop
● MaterI: The Node Lifecycle
● Materi : Realtime App di NodeJS - Real-Time Web Applications with Socket.io
● Materi : Realtime App di NodeJS - WebSockets
● Materi : Realtime App di NodeJS - Getting Started with Socket.io
● Materi : Realtime App di NodeJS - Socket.io Events
● Materi : Realtime App di NodeJS - Socket.io Events Challenge

You might also like