Skip to content

Instantly share code, notes, and snippets.

View IhwanID's full-sized avatar

Ihwan IhwanID

View GitHub Profile
@IhwanID
IhwanID / index.html
Created May 25, 2025 09:55
Belajar Tailwind CSS
<div class="m-2">
<button class="cursor-pointer rounded-lg border-2 border-gray-950 bg-blue-300 bg-gradient-to-tr from-blue-400 to-yellow-400 p-2.5 text-white hover:bg-gradient-to-tl">Click Me</button>
</div>
<div class="flex h-10 w-10 items-center justify-center rounded-full border-2 border-blue-500 bg-blue-400 font-bold text-white shadow-2xl">MA</div>
<div class="h-screen w-full bg-gray-400 p-10">
<div class="w-full max-w-[400px] rounded-3xl bg-white p-4">
<div class="p-2">
<div class="mb-10">Payment Template</div>
@IhwanID
IhwanID / main.swift
Last active February 1, 2024 13:00
Given a set of numbers, determine if there is a pair that equals a given sum.
//func hasPairWithSum(_ arr: [Int], _ sum: Int) -> Bool {
//
// for i in 0..<arr.count {
// for j in i + 1..<arr.count {
// if arr[i] + arr[j] == sum {
// return true
// }
// }
// }
// return false
@IhwanID
IhwanID / CocoaStandard.sdef
Created June 23, 2023 03:41
Apple Standard SDEF file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dictionary SYSTEM "file://localhost/System/Library/DTDs/sdef.dtd">
<dictionary title="Standard Terminology">
<suite name="Standard Suite" code="????" description="Common classes and commands for all applications.">
<command name="open" code="aevtodoc" description="Open a document.">
<direct-parameter description="The file(s) to be opened.">
<type type="file"/>
@IhwanID
IhwanID / main.swift
Created February 7, 2023 23:35
Self Sizing CollectionView
if let collectionViewLayout = collectionView.collectionViewLayout as? UICollectionViewFlowLayout {
collectionViewLayout.estimatedItemSize = UICollectionViewFlowLayout.automaticSize
}
@IhwanID
IhwanID / news.json
Created March 8, 2022 14:27
Mock JSON NewsAPI
{"status":"ok","totalResults":38,"articles":[{"source":{"id":null,"name":"Kompas.com"},"author":"Rendika Ferri Kurniawan","title":"Fakta-fakta 8 Planet di Tata Surya dan Kemungkinan Planet Kesembilan - Kompas.com - KOMPAS.com","description":"Ada planet-planet yang bergerak tak searah jarum jam, bahkan porosnya miring. Ada juga yang berwarna merah tapi justru dingin. Ini fakta-fakta planet.","url":"https://www.kompas.com/tren/read/2022/03/08/193100965/fakta-fakta-8-planet-di-tata-surya-dan-kemungkinan-planet-kesembilan","urlToImage":"https://asset.kompas.com/crops/zJuFpHFHSpTLKGj4GElqaUkMx1s=/150x4:835x460/780x390/filters:watermark(data/photo/2020/03/10/5e6775d554370.png,0,-0,1)/data/photo/2021/04/19/607cec3127dfa.jpg","publishedAt":"2022-03-08T12:31:00Z","content":null},{"source":{"id":null,"name":"Kompas.com"},"author":"Reska K. Nistanto","title":"Cara Nonton Apple Event Malam Ini, iPhone SE 3 Bakal Meluncur? - Kompas.com - Tekno Kompas.com","description":"Apple akan menggelar acara peluncuran bertajuk 'Peek
@IhwanID
IhwanID / test.swift
Created August 27, 2021 22:39
Track Memory Leaks Unit Test with XCTestCase Extension
import XCTest
extension XCTestCase{
func trackMemoryLeaks(_ instance: AnyObject, file: StaticString = #file, line: UInt = #line){
addTeardownBlock { [weak instance] in
XCTAssertNil(instance, "Instance should have been deallocated. Potential memory leak.", file: file, line: line)
}
}
}
@IhwanID
IhwanID / main.swift
Last active August 17, 2021 12:29
Intro to Dependency Diagrams and Composition
import UIKit
class FeedViewController: UIViewController{
var loadFeed: ((([String]) -> Void) -> Void)!
convenience init(loadFeed: @escaping (([String]) -> Void) -> Void){
self.init()
self.loadFeed = loadFeed
}
@IhwanID
IhwanID / main.swift
Created March 15, 2021 01:22
For Where in Swift
let numbers = [1, 2, 3 , 4 , 5, 6]
for number in numbers{
if number.isMultiple(of: 2){
print(number)
}
}
for number in numbers where number.isMultiple(of: 2){
print(number)
@IhwanID
IhwanID / Optional+Ext.swift
Created March 15, 2021 01:16
String OrEmpty Optional Extension
extension Optional where Wrapped == String{
var orEmpty: String{
switch self{
case .some(let value):
return value
case .none:
return ""
}
}
}
@IhwanID
IhwanID / main.swift
Last active February 5, 2021 15:26
Combine Many Merge Pokemon API
//
// ViewController.swift
// Pokemon
//
// Created by Ihwan ID on 04/02/21.
//
import UIKit
import Combine