Proof of concept app for trying to integrate passkeys and WebAuthn into Vapor

Overview

Vapor Passkey Demo

Proof of concept app for trying to integrate passkeys and WebAuthn into Vapor

Screenshot of app

Usage

Clone the project, then in Terminal run

swift run

In your browser go to http://localhost:8080 and follow the steps!

Note: This is proof of concept code to scope out the work to build a Swift Server library for WebAuthn. I do not advise using it in production until it's had some eyes on it. Many things are unimplemented and untested so be warned! Only tested on macOS 12.4 with Safari 15.5

You might also like...
App for adding and listening audio files
App for adding and listening audio files

SomeSa SomeSa (самса) – приложение, позволяющее загружать и воспроизводить произвольные аудиофайлы. Протестировано на форматах файлов .wav и .mp3, раз

App for searching music and films in iTunes
App for searching music and films in iTunes

inMovies App description: This is an app for searching contnent such as films and music in iTunes. Running the app brings you to page with following c

The easiest way to prepare, play, and remove sounds in your Swift app!

Chirp The easiest way to prepare, play, and remove sounds in your Swift app! ##Installation ###CocoaPods Installation Chirp is available on CocoaPods.

Download app update form url and install it

capacitor-updater Download app update from url and install it. And reload the view. You can list the version and manage it with the command below. Ins

This app demonstrates how to use the Google Cloud Speech API and Apple on-device Speech library to recognize speech in live recorded audio.

SpeechRecognitionIOS This app demonstrates how to use Google Cloud Speech API and Apple on-device Speech library to recognize speech in live audio rec

SleepingBaby - Track your kids activity and allow them sleep soundly with relaxing music in ONE app
SleepingBaby - Track your kids activity and allow them sleep soundly with relaxing music in ONE app

Sleeping Baby Скачать в AppStore. Ключевые используемые технологии: UIKit, MVVM,

MusicPlayer - Beautiful Music Player app built using SwiftUI to demonstrate Neumorphic design pattern and MVVM architecture
MusicPlayer - Beautiful Music Player app built using SwiftUI to demonstrate Neumorphic design pattern and MVVM architecture

Skailer 🎧 Beautiful Music Player app built using SwiftUI to demonstrate Neumorp

11t is an iOS and Android app for connecting to Mastodon, written in Flutter.

README 11t is an iOS and Android app for connecting to Mastodon, written in Flutter. I connect to Mastodon on mastodon.social, but everyone can start

DrumPadPlayground - Starter Project and Final Project for AudioKit DrumPad Playground App built using Apple's Swift Playgrounds on the iPad
Comments
  • Incorrect encoding of base64

    Incorrect encoding of base64

    WebAuthN spec refers to base64url encoding, not base64

    AFAIK Vapor does not have methods to en/decode base64url yet, [but vapor/core does](Please see https://github.com/vapor/core/blob/main/Sources/Core/Data%2BBase64URL.swift)

    What would it take to get support for base64url into Vapor/Vapor or into this project?

    opened by ftruter 3
  • Missing prerequisites: Postgres config

    Missing prerequisites: Postgres config

    Tim, this looks like a very interesting project. But the README omits information vital to get started with it. I'm new to postgreSQL and installed it via brew. After trying MANY things I figured out I could get your server to run by starting it like this

    sql -c "CREATE DATABASE vapor_database" DATABASE_USER=$USER swift run

    Would you be so kind as to amend the README for us novices?

    opened by ftruter 2
  • InternalServerError - Making a credential

    InternalServerError - Making a credential

    I suspect there is at least one environment variables that needs to be set before running this proof-of-concept. I noticed the makeCredential route is looking for an ORIGIN variable, eg. guard let origin = Environment.get("ORIGIN") else { throw Abort(.internalServerError) } Any idea what I should set this to?

    opened by knight556 0
  • SecurityError: The effective domain of the document is not a valid domain.

    SecurityError: The effective domain of the document is not a valid domain.

    webauthn.js line 67 const newCredential = await navigator.credentials.create({ publicKey }); this code failed and throw error: SecurityError: The effective domain of the document is not a valid domain. Please help

    opened by splcz 2
Owner
Tim Condon
All things server-side Swift! 🚀 Vapor Core Team
Tim Condon
What is eCortex? A informative tool to manage and organize thoughts and ideas sparked through out the day into custom categories.

eCortex What is eCortex? A informative tool to manage and organize thoughts and ideas sparked through out the day into custom categories. What problem

Myra 21 May 11, 2022
🗣Voice overlay helps you turn your user's voice into text, providing a polished UX while handling for you the necessary permissions

Voice overlay helps you turn your user's voice into text, providing a polished UX while handling for you the necessary permissions. It uses i

Algolia 490 Dec 19, 2022
An iOS app that visually clones Spotify's app and consumes the official Spotify's Web API to show(and play) songs, podcasts, artists and more.

SpotifyClone An iOS app that visually clones Spotify's app and consumes the official Spotify's Web API to show(and play) songs, podcasts, artists and

null 104 Jan 7, 2023
AIB indicates for your app users which audio is playing. Just like the Podcasts app.

Audio Indicator Bars for iOS and tvOS Indicates for your app users which audio is playing. Just like the Podcasts app. Index Requirements and Details

Leonardo Cardoso 285 Nov 23, 2022
Voice Memos is an audio recorder App for iPhone and iPad that covers some of the new technologies and APIs introduced in iOS 8 written in Swift.

VoiceMemos Voice Memos is a voice recorder App for iPhone and iPad that covers some of the new technologies and APIs introduced in iOS 8 written in Sw

Zhouqi Mo 322 Aug 4, 2022
Nobetci Eczacim is open-source App Store Application which users can get pharmacy information and location easily and safely.

Pharmacy-On-Duty Nobetci Eczacim Project Description This project designed for make it easier for people to search for a pharmacy on duty. App Store A

Mert Demirtas 5 Sep 19, 2022
Beautiful Music Player app built using SwiftUI to demonstrate Neumorphic design pattern and MVVM architecture.

Beautiful Music Player app built using SwiftUI to demonstrate Neumorphic design pattern ?? and MVVM architecture ?? . Made with love ❤️ by Sameer Nawaz

Sameer Nawaz 120 Jan 4, 2023
Swift Radio is an open source radio station app with robust and professional features.

Swift Radio Swift Radio is an open source radio station app with robust and professional features. This is a fully realized Radio App built entirely i

Ahmed AlOtaibi 0 Oct 13, 2021
macOS app that allows the control of Spotify and AppleMusic/iTunes music playback from the menu bar.

PlayStatus is a simple macOS app that allows the control of Spotify, Apple Music(macOS 10.15+) and iTunes including iTunes Radio/Beats1 playback from

Nikhil Bolar 114 Dec 28, 2022
SoundManager - A simple framework to load and play sounds in your app.

SoundManager - A simple framework to load and play sounds in your app.

Jonathan Chacón 3 Jan 5, 2022