BikeShare
SwiftUI, Jetpack Compose, Compose for Desktop and Compose for Web based Kotlin Multiplatform project (using CityBikes API http://api.citybik.es/v2/). Uses Room for local persistence
파일 탐색기
최종 버전 다운로드 (.zip)- devcontainer.json
- android.yml
- build-and-publish-web.yml
- ios.yml
- junie.yml
- publish-ios.yml
- web.yml
- guidelines.md
- Color.kt
- Theme.kt
- Type.kt
- BikeShareApplication.kt
- MainActivity.kt
- flag_ad.xml
- flag_ae.xml
- flag_af.xml
- flag_ag.xml
- flag_ai.xml
- flag_al.xml
- flag_am.xml
- flag_ao.xml
- flag_ar.xml
- flag_as.xml
- flag_at.xml
- flag_au.xml
- flag_aw.xml
- flag_ax.xml
- flag_az.xml
- flag_ba.xml
- flag_bb.xml
- flag_bd.xml
- flag_be.xml
- flag_bf.xml
- flag_bg.xml
- flag_bh.xml
- flag_bi.xml
- flag_bj.xml
- flag_bl.xml
- flag_bm.xml
- flag_bn.xml
- flag_bo.xml
- flag_br.xml
- flag_bs.xml
- flag_bt.xml
- flag_bv.xml
- flag_bw.xml
- flag_by.xml
- flag_bz.xml
- flag_ca.xml
- flag_cc.xml
- flag_cd.xml
- flag_cf.xml
- flag_cg.xml
- flag_ch.xml
- flag_ci.xml
- flag_ck.xml
- flag_cl.xml
- flag_cm.xml
- flag_cn.xml
- flag_cn2.xml
- flag_co.xml
- flag_cr.xml
- flag_cu.xml
- flag_cv.xml
- flag_cw.xml
- flag_cx.xml
- flag_cy.xml
- flag_cz.xml
- flag_cz2.xml
- flag_de.xml
- flag_de2.xml
- flag_dj.xml
- flag_dk.xml
- flag_dk2.xml
- flag_dm.xml
- flag_do.xml
- flag_dz.xml
- flag_ec.xml
- flag_ee.xml
- flag_eg.xml
- flag_er.xml
- flag_es.xml
- flag_es2.xml
- flag_et.xml
- flag_eu.xml
- flag_fi.xml
- flag_fj.xml
- flag_fk.xml
- flag_fm.xml
- flag_fo.xml
- flag_fr.xml
- flag_fr2.xml
- flag_ga.xml
- flag_gb.xml
- flag_gb2.xml
- flag_gd.xml
- flag_ge.xml
- flag_ge2.xml
- flag_gf.xml
- flag_gg.xml
- flag_gh.xml
- flag_gi.xml
- flag_gl.xml
- flag_gm.xml
- flag_gn.xml
- flag_gp.xml
- flag_gq.xml
- flag_gr.xml
- flag_gr2.xml
- flag_gs.xml
- flag_gt.xml
- flag_gu.xml
- flag_gw.xml
- flag_gy.xml
- flag_hk.xml
- flag_hk2.xml
- flag_hn.xml
- flag_hr.xml
- flag_ht.xml
- flag_hu.xml
- flag_id.xml
- flag_ie.xml
- flag_il.xml
- flag_im.xml
- flag_in.xml
- flag_io.xml
- flag_iq.xml
- flag_ir.xml
- flag_is.xml
- flag_it.xml
- flag_it2.xml
- flag_je.xml
- flag_jm.xml
- flag_jo.xml
- flag_jp.xml
- flag_jp2.xml
- flag_ke.xml
- flag_kg.xml
- flag_kh.xml
- flag_ki.xml
- flag_km.xml
- flag_kn.xml
- flag_kp.xml
- flag_kr.xml
- flag_kr2.xml
- flag_kw.xml
- flag_ky.xml
- flag_kz.xml
- flag_la.xml
- flag_lb.xml
- flag_lc.xml
- flag_li.xml
- flag_lk.xml
- flag_lr.xml
- flag_ls.xml
- flag_lt.xml
- flag_lt2.xml
- flag_lu.xml
- flag_lv.xml
- flag_ly.xml
- flag_ma.xml
- flag_mc.xml
- flag_md.xml
- flag_me.xml
- flag_mf.xml
- flag_mg.xml
- flag_mh.xml
- flag_mk.xml
- flag_ml.xml
- flag_mm.xml
- flag_mn.xml
- flag_mo.xml
- flag_mp.xml
- flag_mq.xml
- flag_mr.xml
- flag_ms.xml
- flag_mt.xml
- flag_mu.xml
- flag_mv.xml
- flag_mw.xml
- flag_mx.xml
- flag_mx2.xml
- flag_my.xml
- flag_my2.xml
- flag_mz.xml
- flag_na.xml
- flag_nc.xml
- flag_ne.xml
- flag_nf.xml
- flag_ng.xml
- flag_ni.xml
- flag_nl.xml
- flag_nl2.xml
- flag_no.xml
- flag_np.xml
- flag_nr.xml
- flag_nu.xml
- flag_nz.xml
- flag_om.xml
- flag_pa.xml
- flag_pe.xml
- flag_pf.xml
- flag_pg.xml
- flag_ph.xml
- flag_pk.xml
- flag_pl.xml
- flag_pl2.xml
- flag_pm.xml
- flag_pn.xml
- flag_pr.xml
- flag_ps.xml
- flag_pt.xml
- flag_pw.xml
- flag_py.xml
- flag_qa.xml
- flag_qa2.xml
- flag_re.xml
- flag_ro.xml
- flag_rs.xml
- flag_ru.xml
- flag_ru2.xml
- flag_rw.xml
- flag_sa.xml
- flag_sb.xml
- flag_sc.xml
- flag_sd.xml
- flag_se.xml
- flag_sg.xml
- flag_sh.xml
- flag_si.xml
- flag_sj.xml
- flag_sk.xml
- flag_sl.xml
- flag_sm.xml
- flag_sn.xml
- flag_so.xml
- flag_sr.xml
- flag_ss.xml
- flag_st.xml
- flag_sv.xml
- flag_sx.xml
- flag_sy.xml
- flag_sz.xml
- flag_tc.xml
- flag_td.xml
- flag_tf.xml
- flag_tg.xml
- flag_th.xml
- flag_tj.xml
- flag_tk.xml
- flag_tl.xml
- flag_tm.xml
- flag_tn.xml
- flag_to.xml
- flag_tr.xml
- flag_tt.xml
- flag_tv.xml
- flag_tw.xml
- flag_tz.xml
- flag_ua.xml
- flag_ug.xml
- flag_uk.xml
- flag_um.xml
- flag_us.xml
- flag_us2.xml
- flag_us_ca.xml
- flag_uy.xml
- flag_uz.xml
- flag_va.xml
- flag_vc.xml
- flag_ve.xml
- flag_vg.xml
- flag_vi.xml
- flag_vn.xml
- flag_vn2.xml
- flag_vu.xml
- flag_wf.xml
- flag_ws.xml
- flag_xk.xml
- flag_ye.xml
- flag_yt.xml
- flag_za.xml
- flag_zm.xml
- flag_zw.xml
- ic_bike.xml
- ic_bike_green.xml
- ic_bike_orange.xml
- ic_home_black_24dp.xml
- ic_launcher_background.xml
- ic_notifications_black_24dp.xml
- ic_launcher.xml
- ic_launcher_round.xml
- ic_launcher_foreground.png
- ic_launcher_round.png
- ic_launcher_foreground.png
- ic_launcher_round.png
- ic_launcher_foreground.png
- ic_launcher_round.png
- ic_launcher.webp
- ic_launcher_foreground.png
- ic_launcher_round.png
- ic_launcher.webp
- ic_launcher_foreground.png
- ic_launcher_round.png
- colors.xml
- strings.xml
- themes.xml
- themes.xml
- themes.xml
- themes.xml
- bike_share_widget_info.xml
- AndroidManifest.xml
- .gitignore
- build.gradle.kts
- proguard-rules.pro
- screenshot1.png
- screenshot_android.jpg
- screenshot_ios_swiftui.png
- 1.json
- AndroidApplicationComponent.kt
- actual.kt
- AndroidManifest.xml
- flag_ad.xml
- flag_ae.xml
- flag_af.xml
- flag_ag.xml
- flag_ai.xml
- flag_al.xml
- flag_am.xml
- flag_ao.xml
- flag_ar.xml
- flag_as.xml
- flag_at.xml
- flag_au.xml
- flag_aw.xml
- flag_ax.xml
- flag_az.xml
- flag_ba.xml
- flag_bb.xml
- flag_bd.xml
- flag_be.xml
- flag_bf.xml
- flag_bg.xml
- flag_bh.xml
- flag_bi.xml
- flag_bj.xml
- flag_bl.xml
- flag_bm.xml
- flag_bn.xml
- flag_bo.xml
- flag_br.xml
- flag_bs.xml
- flag_bt.xml
- flag_bv.xml
- flag_bw.xml
- flag_by.xml
- flag_bz.xml
- flag_ca.xml
- flag_cc.xml
- flag_cd.xml
- flag_cf.xml
- flag_cg.xml
- flag_ch.xml
- flag_ci.xml
- flag_ck.xml
- flag_cl.xml
- flag_cm.xml
- flag_cn.xml
- flag_cn2.xml
- flag_co.xml
- flag_cr.xml
- flag_cu.xml
- flag_cv.xml
- flag_cw.xml
- flag_cx.xml
- flag_cy.xml
- flag_cz.xml
- flag_cz2.xml
- flag_de.xml
- flag_de2.xml
- flag_dj.xml
- flag_dk.xml
- flag_dk2.xml
- flag_dm.xml
- flag_do.xml
- flag_dz.xml
- flag_ec.xml
- flag_ee.xml
- flag_eg.xml
- flag_er.xml
- flag_es.xml
- flag_es2.xml
- flag_et.xml
- flag_eu.xml
- flag_fi.xml
- flag_fj.xml
- flag_fk.xml
- flag_fm.xml
- flag_fo.xml
- flag_fr.xml
- flag_fr2.xml
- flag_ga.xml
- flag_gb.xml
- flag_gb2.xml
- flag_gd.xml
- flag_ge.xml
- flag_ge2.xml
- flag_gf.xml
- flag_gg.xml
- flag_gh.xml
- flag_gi.xml
- flag_gl.xml
- flag_gm.xml
- flag_gn.xml
- flag_gp.xml
- flag_gq.xml
- flag_gr.xml
- flag_gr2.xml
- flag_gs.xml
- flag_gt.xml
- flag_gu.xml
- flag_gw.xml
- flag_gy.xml
- flag_hk.xml
- flag_hk2.xml
- flag_hn.xml
- flag_hr.xml
- flag_ht.xml
- flag_hu.xml
- flag_id.xml
- flag_ie.xml
- flag_il.xml
- flag_im.xml
- flag_in.xml
- flag_io.xml
- flag_iq.xml
- flag_ir.xml
- flag_is.xml
- flag_it.xml
- flag_it2.xml
- flag_je.xml
- flag_jm.xml
- flag_jo.xml
- flag_jp.xml
- flag_jp2.xml
- flag_ke.xml
- flag_kg.xml
- flag_kh.xml
- flag_ki.xml
- flag_km.xml
- flag_kn.xml
- flag_kp.xml
- flag_kr.xml
- flag_kr2.xml
- flag_kw.xml
- flag_ky.xml
- flag_kz.xml
- flag_la.xml
- flag_lb.xml
- flag_lc.xml
- flag_li.xml
- flag_lk.xml
- flag_lr.xml
- flag_ls.xml
- flag_lt.xml
- flag_lt2.xml
- flag_lu.xml
- flag_lv.xml
- flag_ly.xml
- flag_ma.xml
- flag_mc.xml
- flag_md.xml
- flag_me.xml
- flag_mf.xml
- flag_mg.xml
- flag_mh.xml
- flag_mk.xml
- flag_ml.xml
- flag_mm.xml
- flag_mn.xml
- flag_mo.xml
- flag_mp.xml
- flag_mq.xml
- flag_mr.xml
- flag_ms.xml
- flag_mt.xml
- flag_mu.xml
- flag_mv.xml
- flag_mw.xml
- flag_mx.xml
- flag_mx2.xml
- flag_my.xml
- flag_my2.xml
- flag_mz.xml
- flag_na.xml
- flag_nc.xml
- flag_ne.xml
- flag_nf.xml
- flag_ng.xml
- flag_ni.xml
- flag_nl.xml
- flag_nl2.xml
- flag_no.xml
- flag_np.xml
- flag_nr.xml
- flag_nu.xml
- flag_nz.xml
- flag_om.xml
- flag_pa.xml
- flag_pe.xml
- flag_pf.xml
- flag_pg.xml
- flag_ph.xml
- flag_pk.xml
- flag_pl.xml
- flag_pl2.xml
- flag_pm.xml
- flag_pn.xml
- flag_pr.xml
- flag_ps.xml
- flag_pt.xml
- flag_pw.xml
- flag_py.xml
- flag_qa.xml
- flag_qa2.xml
- flag_re.xml
- flag_ro.xml
- flag_rs.xml
- flag_ru.xml
- flag_ru2.xml
- flag_rw.xml
- flag_sa.xml
- flag_sb.xml
- flag_sc.xml
- flag_sd.xml
- flag_se.xml
- flag_sg.xml
- flag_sh.xml
- flag_si.xml
- flag_sj.xml
- flag_sk.xml
- flag_sl.xml
- flag_sm.xml
- flag_sn.xml
- flag_so.xml
- flag_sr.xml
- flag_ss.xml
- flag_st.xml
- flag_sv.xml
- flag_sx.xml
- flag_sy.xml
- flag_sz.xml
- flag_tc.xml
- flag_td.xml
- flag_tf.xml
- flag_tg.xml
- flag_th.xml
- flag_tj.xml
- flag_tk.xml
- flag_tl.xml
- flag_tm.xml
- flag_tn.xml
- flag_to.xml
- flag_tr.xml
- flag_tt.xml
- flag_tv.xml
- flag_tw.xml
- flag_tz.xml
- flag_ua.xml
- flag_ug.xml
- flag_uk.xml
- flag_um.xml
- flag_us.xml
- flag_us2.xml
- flag_us_ca.xml
- flag_uy.xml
- flag_uz.xml
- flag_va.xml
- flag_vc.xml
- flag_ve.xml
- flag_vg.xml
- flag_vi.xml
- flag_vn.xml
- flag_vn2.xml
- flag_vu.xml
- flag_wf.xml
- flag_ws.xml
- flag_xk.xml
- flag_ye.xml
- flag_yt.xml
- flag_za.xml
- flag_zm.xml
- flag_zw.xml
- ic_bike.xml
- ic_bike_green.xml
- ic_bike_orange.xml
- ic_home_black_24dp.xml
- ic_launcher_background.xml
- ic_notifications_black_24dp.xml
- CountryListPresenter.kt
- CountryListUI.kt
- AppDatabase.kt
- BikeShareDao.kt
- SharedApplicationComponent.kt
- SharedUiComponent.kt
- Network.kt
- NetworkListPresenter.kt
- NetworkListUI.kt
- CityBikesApi.kt
- CityBikesRepository.kt
- Screens.kt
- StationListPresenter.kt
- StationListUI.kt
- BikeShareContent.kt
- WindowSize.kt
- CountriesViewModelShared.kt
- NetworksViewModelShared.kt
- StationsViewModelShared.kt
- expect.kt
- IosApplicationComponent.kt
- actual.kt
- DesktopApplicationComponent.kt
- actual.kt
- WebApplicationComponent.kt
- actual.kt
- .gitignore
- BikeShareNotebook.ipynb
- build.gradle.kts
- consumer-rules.pro
- europe.geojson
- proguard-rules.pro
- main.kt
- .gitignore
- build.gradle.kts
- Main.kt
- index.html
- build.gradle.kts
- Appfile
- Fastfile
- README.md
- gradle-wrapper.jar
- gradle-wrapper.properties
- libs.versions.toml
- 100.png
- 1024.png
- 114.png
- 120.png
- 128.png
- 144.png
- 152.png
- 16.png
- 167.png
- 172.png
- 180.png
- 196.png
- 20.png
- 216.png
- 256.png
- 29.png
- 32.png
- 40.png
- 48.png
- 50.png
- 512.png
- 55.png
- 57.png
- 58.png
- 60.png
- 64.png
- 72.png
- 76.png
- 80.png
- 87.png
- 88.png
- Contents.json
- Contents.json
- first.pdf
- Contents.json
- iconfinder_ic_directions_bike_48px_352313.png
- Contents.json
- second.pdf
- Contents.json
- LaunchScreen.storyboard
- Contents.json
- AppDelegate.swift
- ContentView.swift
- Info.plist
- KMMiewModel.swift
- SceneDelegate.swift
- Theme.swift
- Package.resolved
- IDEWorkspaceChecks.plist
- contents.xcworkspacedata
- xcschememanagement.plist
- project.pbxproj
- Contents.json
- Contents.json
- Contents.json
- iconfinder_ic_directions_bike_48px_352313.png
- Contents.json
- Contents.json
- BikeShareWidget.intentdefinition
- BikeShareWidget.swift
- Info.plist
- Entitlements.plist
- Pods-BikeShare-checkManifestLockResult.txt
- BikeShare-master.d
- BikeShare-master.dia
- BikeShare-master.swiftdeps
- BikeShare-OutputFileMap.json
- BikeShare.LinkFileList
- BikeShare.SwiftFileList
- all-product-headers.yaml
- BikeShare-all-non-framework-target-headers.hmap
- BikeShare-all-target-headers.hmap
- BikeShare-generated-files.hmap
- BikeShare-own-target-headers.hmap
- BikeShare-project-headers.hmap
- BikeShare.app.xcent
- BikeShare.hmap
- Script-9D61C20E261DD7716D4163C7.sh
- embedded.mobileprovision
- 69f5ab8b256ff2edf3ee792eedae1323-buildRequest.json
- 69f5ab8b256ff2edf3ee792eedae1323-desc.xcbuild
- 69f5ab8b256ff2edf3ee792eedae1323-manifest.xcbuild
- 69f5ab8b256ff2edf3ee792eedae1323-targetGraph.txt
- build.db
- BuildDescriptionCacheIndex-dd39c4cba42729ae0343d05e5c404450
- yarn.lock
- SqliteWasmWorker.kt
- package.json
- worker.js
- build.gradle.kts
- BikeShare.swift
- .gitignore
- Package.swift
- .gitattributes
- .gitignore
- build.gradle.kts
- gradle.properties
- gradlew
- gradlew.bat
- LICENSE
- README.md
- renovate.json
- settings.gradle.kts
# 설치 가이드
1. 코드 내려받기
git clone https://github.com/joreilly/BikeShare
깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.
cd BikeShare
방금 내려받은 프로젝트 폴더 안으로 이동합니다.
2. Gradle (Java/Kotlin)
보통 추천사전 준비물
- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- JDK (Java) Java/Kotlin 프로젝트를 빌드/실행하려면 필요합니다.
- Gradle 레포에 포함된 gradlew(Gradle Wrapper)를 쓰면 Gradle을 따로 설치할 필요가 없습니다.
cd androidApp
이 프로젝트의 관련 파일이 하위 폴더 안에 있어서, 먼저 그 폴더로 이동합니다.
./gradlew build
Gradle로 빌드를 진행합니다.
BUILD SUCCESSFUL 메시지가 뜨면 성공입니다. build/ 폴더에 결과물이 생성됩니다.
3. Node.js
쉬움사전 준비물
⚠️ 이 프로젝트는 규모가 큰 저장소라, 이 방법이 실제 핵심 제품이 아니라 내부 하위 패키지를 가리키는 것일 수 있습니다. README 전체를 함께 확인해보세요.
cd sqlite-wasm-worker/worker
이 프로젝트의 관련 파일이 하위 폴더 안에 있어서, 먼저 그 폴더로 이동합니다.
npm install
package.json에 명시된 라이브러리들을 내려받아 설치합니다.
npm start
개발/실행 서버를 켭니다.
명령어 실행 후 터미널에 나타나는 주소(보통 http://localhost:3000 형태)를 브라우저에서 열어보세요.
// repository documentation
Was this content helpful?
(0 ratings)
