All Projects → sergiocasero → Votlin App

sergiocasero / Votlin App

Licence: apache-2.0
Kotlin multiplatform project

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Votlin App

Mvikotlin
Extendable MVI framework for Kotlin Multiplatform with powerful debugging tools (logging and time travel)
Stars: ✭ 483 (+150.26%)
Mutual labels:  multiplatform, native
Multiplatform-Log
Kotlin Multi Platform Logger, for android an ios : Logcat & print
Stars: ✭ 49 (-74.61%)
Mutual labels:  native, multiplatform
Klock
Multiplatform Date and time library for Kotlin
Stars: ✭ 569 (+194.82%)
Mutual labels:  multiplatform, native
Multiplatform-LiveData
Multiplatorm implementation of LiveDatas / MVVM in kotlin android & native ios
Stars: ✭ 95 (-50.78%)
Mutual labels:  native, multiplatform
Multiplatform Preferences
Kotlin Multi Platform Preferences, for android an ios : SharedPreferences & NSUserDefault
Stars: ✭ 76 (-60.62%)
Mutual labels:  multiplatform, native
Node Postal
NodeJS bindings to libpostal for fast international address parsing/normalization
Stars: ✭ 165 (-14.51%)
Mutual labels:  native
Lam
🚀 a lightweight, universal actor-model vm for writing scalable and reliable applications that run natively and on WebAssembly
Stars: ✭ 176 (-8.81%)
Mutual labels:  native
Castor3d
Multi-OS 3D engine.
Stars: ✭ 156 (-19.17%)
Mutual labels:  multiplatform
Jpegkit Android
Efficient JPEG operations for Android without the risk of an OutOfMemoryException.
Stars: ✭ 154 (-20.21%)
Mutual labels:  native
Ember Native Dom Helpers
Test helpers for your integration tests that fire native events
Stars: ✭ 187 (-3.11%)
Mutual labels:  native
Kotlin Multiplatform Template
Kotlin Multiplatform Template
Stars: ✭ 185 (-4.15%)
Mutual labels:  multiplatform
React Native Selectable Text
Capture text selection and customize the action menu
Stars: ✭ 174 (-9.84%)
Mutual labels:  native
Expo Voxel
🎮🌳 Voxel Terrain made in React Native. ∛
Stars: ✭ 169 (-12.44%)
Mutual labels:  native
React Native Google Place Picker
React Native Wrapper of Google Place Picker for iOS + Android.
Stars: ✭ 180 (-6.74%)
Mutual labels:  native
Yyets flutter
人人影视客户端 for Flutter
Stars: ✭ 157 (-18.65%)
Mutual labels:  multiplatform
Xcrash
🔥 xCrash provides the Android app with the ability to capture java crash, native crash and ANR. No root permission or any system permissions are required.
Stars: ✭ 2,689 (+1293.26%)
Mutual labels:  native
Cs2cpp
C# to C++ transpiler (Cs2Cpp) (Powered by Roslyn)
Stars: ✭ 155 (-19.69%)
Mutual labels:  native
Node Inline Cpp
Inline C++ with Node.js
Stars: ✭ 172 (-10.88%)
Mutual labels:  native
Px sched
Single Header C++11 Task Scheduler
Stars: ✭ 182 (-5.7%)
Mutual labels:  multiplatform
Jswebview
基于JsBridge封装的高效自带加载进度条的WebView
Stars: ✭ 171 (-11.4%)
Mutual labels:  native

Votlin App

Votlin Logo

Description

Votlin is a small petshop with a master/detail structure. It lists the talks from Extremadura Digital Day event.

Project slides

Server

The server is based on ktor

Web Page

The website is based on React

Visit the site here

Android Application

The Android version is developed in Kotlin/JVM

You can download the app here: Votlin in Google play.

iOS Application

With kotlin/native and Swift

How to build and run

Building the code

  • Make sure you have the Android SDK installed
  • Open the project in IntelliJ IDEA (2017.3 EAP recommended)
  • Create a file local.properties in the root directory of the project, pointing to your Android SDK installation. On Mac OS, the contents should be sdk.dir=/Users/<your username>/Library/Android/sdk. On other OSes, please adjust accordingly.
  • Run ./gradlew build

Running the backend

  • Run ./gradlew backend:run from the command line or from Gradle toolwindow
  • The backend will start serving on localhost:8080, with data stored in MySQL database

Running the Android app

  • Create a run configuration of type "Android App"
  • Select module "app" in the run configuration settings
  • Run the configuration
  • Select the emulator or connected device, as normal

Running the Web client

  • Make sure the backend is running on localhost:8080
  • Run gradlew :frontend:run in the 'web' directory to run webpack development server

Running iOS

  • This is quite simple, open the xcodeproject file with xCode and click on "play" button, that's all ;)

Thanks to:

TODO

  • iOS -> Fix UI thread issue.
  • TornadoFX -> Improve the UI
  • Tests
  • Error handling, maybe with Arrow datatypes?
  • Wiki -> Add how import and iOS framework and configure the build phase to use Kotlin from iOS

Screenshots

Android

Android app

iOS

iOS app

Web

Web app

Demo gif

Demo GIF

License

Copyright 2018 Sergio Casero & Daniel Llanos

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.```
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].