![Exodai Academy](/img/default-banner.jpg)
- 199
- 162 582
Exodai Academy
Registrace 16. 06. 2011
Hi, Welcome to the Exodai Academy Channel. Former known as Devscorch.
Exodai Academy is a complete new idea where we teach people about Swift. We ourselves specialize in Swift, SwiftUi and we do work a lot with Serverside Swift.
On this channel we will provide How to, Tutorials, Building guides and we will actually show you how to build cool stuff.
Exodai Academy is a complete new idea where we teach people about Swift. We ourselves specialize in Swift, SwiftUi and we do work a lot with Serverside Swift.
On this channel we will provide How to, Tutorials, Building guides and we will actually show you how to build cool stuff.
Build a RESTAPI in Swift #22 Building more Jobs
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project.
I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications.
In this series we are building a RESTAPI using the Vapor Framework, a Swift framework which allows us to build Swift applications for the web.
So I hope you are as excited as I am and if you are ready and want to learn how to code RESTAPI's in Swift, just watch the whole series and see what happens ;)
For more articles and free content check out my website:
devscorch.com
Please follow me on Instagram, Facebook and Twitter
devscorch
devscorch
devscorch
I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications.
In this series we are building a RESTAPI using the Vapor Framework, a Swift framework which allows us to build Swift applications for the web.
So I hope you are as excited as I am and if you are ready and want to learn how to code RESTAPI's in Swift, just watch the whole series and see what happens ;)
For more articles and free content check out my website:
devscorch.com
Please follow me on Instagram, Facebook and Twitter
devscorch
devscorch
devscorch
zhlédnutí: 386
Video
Build a RESTAPI in Swift #21 Creating Jobs in Vapor
zhlédnutí 360Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #20 Fixing the MiddleWare and Looking into Filter Bug
zhlédnutí 172Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #19 Testing and Searching for Bugs
zhlédnutí 256Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #18 User Routes and User Protocols part 2
zhlédnutí 204Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #17 User Routes and User Protocols
zhlédnutí 189Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #16 Search and Filtering
zhlédnutí 266Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #15 Finishing up Controllers and Routing
zhlédnutí 77Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #14 More Controllers
zhlédnutí 287Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #13 Controllers and Routing
zhlédnutí 114Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #12 Middleware and Controllers
zhlédnutí 338Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #11 Authentication and Seeds
zhlédnutí 502Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #10 The Last Service
zhlédnutí 289Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #9 More Services
zhlédnutí 315Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #8 Build the User and Course service
zhlédnutí 474Před rokem
In this new video series we will be building a new RESTAPI for my new learning platform called Devscorch Academy. Devscorch Academy is a new platform which I will be launching later In 2023 and it is going to be an amazing project. I decided to build this completely into the open, so this means I'm recording the complete development of the RESTAPI, The website and the mobile applications. In th...
Build a RESTAPI in Swift #7 Building blueprints with Protocols
zhlédnutí 542Před rokem
Build a RESTAPI in Swift #7 Building blueprints with Protocols
Build a RESTAPI in Swift #6 Migrations with Fluent
zhlédnutí 494Před rokem
Build a RESTAPI in Swift #6 Migrations with Fluent
Build a RESTAPI in Swift #5 Finishing up our Models and FieldKeys
zhlédnutí 468Před rokem
Build a RESTAPI in Swift #5 Finishing up our Models and FieldKeys
Build a RESTAPI in Swift #4 More Models and FieldKeys in Vapor
zhlédnutí 695Před rokem
Build a RESTAPI in Swift #4 More Models and FieldKeys in Vapor
Build a RESTAPI in Swift #3 Models and Fluent in Swift
zhlédnutí 1,1KPřed rokem
Build a RESTAPI in Swift #3 Models and Fluent in Swift
Build a RESTAPI in Swift #2 Setting up the Project with vapor
zhlédnutí 1,5KPřed rokem
Build a RESTAPI in Swift #2 Setting up the Project with vapor
Build a RESTAPI in Swift with Vapor #1 Intro into the series
zhlédnutí 3KPřed rokem
Build a RESTAPI in Swift with Vapor #1 Intro into the series
5 books that changed my way of thinking
zhlédnutí 47Před rokem
5 books that changed my way of thinking
My thoughts on Social login and why i dont use it
zhlédnutí 25Před rokem
My thoughts on Social login and why i dont use it
Getting an error when working with the CreateUserSeed: [ ERROR ] [Migrator] Failed prepare [database-id: psql, error: PSQLError(code: server, serverInfo: [sqlState: 42703, file: parse_target.c, line: 1066, message: column "completedCourses" of relation "users" does not exist, position: 178, routine: checkInsertTargets, localizedSeverity: ERROR, severity: ERROR], triggeredFromRequestInFile: PostgresKit/PostgresDatabase+SQL.swift, line: 57, query: PostgresQuery(sql: INSERT INTO "users" ("id", "name", "lastname", "username", "naemailme", "password", "city", "postalcode", "address", "country", "role", "subscriptionIsActiveTill", "myCourses", "completedCourses", "bio", "createdAt", "updatedAt", "userImage") VALUES ($1, DEFAULT, DEFAULT, $2, $3, $4, DEFAULT, DEFAULT, DEFAULT, DEFAULT, $5, DEFAULT, DEFAULT, DEFAULT, DEFAULT, $6, $7, DEFAULT) RETURNING "id", binds: [(****; UUID; format: binary), (****; TEXT; format: binary), (****; TEXT; format: binary), (****; TEXT; format: binary), (****; TEXT; format: binary), (****; TIMESTAMPTZ; format: binary), (****; TIMESTAMPTZ; format: binary)])), migration: App.CreateUserSeed] Any ideas on what might be causing this?
@23:21 author is missing from GuideModel & init. I'm just deactivating it for the time being.
Don't worry about what is missing :) The idea of the series is that we code something and make mistakes :)
@5:05 status is missing from SessionModel init, status was originally added in SessionModel and SessionModelFieldKeys
@40:52 Shouldn't it read? course.price = updateDTO.price ?? course.price
Yes exactly Good job spotting that mistake :)
Doh! You changed CRUDProtocol to USERProtocols
Whew! , I couldn't get UserServices to compile until I upgraded to Xcode 15.4, very strange! Xcode beta did not like UserDTO. Ok on with the show!
Thank you!
Just found this series today, so far so good!
Happy to hear. Stay tuned. Im in the process of recording a new Series where we actually are going to interact with this API using a SwiftUI App
Why you make the protocol functions static brother, that way you wont be able to inject dependencies in the implementation
static functions can be called directly by calling the Service. So UserService.create() for example. Not using static forces you to first initialize it by doing: var userService = UserService() userService.create() using static is less work and when you use static, you know that you are not accessing any instance properties. That is why :)
Why not static let in the UserModel field keys? (Sorry if this is not a thing, I don't actually know Swift)
Because you dont need to :)
Thanks a lot for the series, I am really enjoying it. I have a question, if we create this StudentMiddleware, do we still need the validation if the user role is student on the CourseServices?
No we actually dont. :) Very nice you noticed that. Im happy you enjoyed the series.
This is still useful for my Catalina !! Thanks so much :3
What extension do we have to use to run the program?
UIKIt and Swift
I am getting the "Cannot find 'Fieldkeys' in scope" error. Anything I should set up in the project to fix this? I know its been a few months so maybe some stuff changed especially in the boiler plate vapor project, there's a few differences :) Thanks!
FieldKeys is something we created ourselves. so extension UserModel { structure FieldKeys { all fieldkey values}} I think you didn’t define FieldKeys in the right way,
The back ground music is too loud super distracting
Sorry for the late reply. Yeah I noticed it as well. I actually added the background music as an experiment to end my silent points. I will not add it in my new video series which in editing as we speak :) Thank you for the feedback.
There's an editing glitch between 7:39 and 8:21. Thought you might like to know. :)
I just subscribed. This is a brilliant playlist!. Thanks for creating. :)
Im happy you are enjoying it. If you have any feedback let me know. Im planning a new series where we are going to build a complete product using Vapor as well.
@@Exodai-Academy Any updates yet?
Absolutely useless course. We are building Services, models, etc. without any context.🤬
It is not a course :) Just a video series where we build a RESTAPI for a learning platform. The only reason for the series is so people can build their own API in Swift. It is in no way a full course where I go over every little aspect of what we are doing. But im sorry you are not happy with the video series. Something you would like to see different?
It is incredibly useful to see someone write professional, clean code and I'm learning a lot. This is free content, don't complain.
@@Aaron-dy2ey Absolutely! Ditto that!
@@Exodai-Academy Some ppl can't see the forest through the trees, lol!!!
@@Aaron-dy2ey In a few weeks im launching a new series where we are going to build the SwiftUI app to interact with this api. If you loved this code structure just wait till you see that series <3
how u make the round circle photo? plz tell me
You can do this 2 different ways. Or in Sketch and Figma by giving it rounded corners of 200. Or in UIKit using corner radius of 200
Where’s part 13 ?)
czcams.com/video/fG-pf8tY1yQ/video.html
i was happy until you called a forward slash a dash. - is a dash / is a forward slash \ is a back slash
Yeah sorry for that. English is not my native language. I will try to keep it in mind.
What did you do at 4min 31 sec. Atleast tell us that. Without saying anything you're doing stuff
OOo I think something went wrong there indeed. There we selected the constraints and deleted them
Thanks, you help me a loat
Great tutorials ! Please can you make the text larger ! Many thanks.
You mean of the code? Yeah I can do that in the future. Sorry for the inconvenience
@@Exodai-Academy No need to apologise please. It's probably my eye sight getting worse and I am living in denial. 😁 Many thanks ! 👍
Thanks, at 09:10 what did you press? is it command c? I pressed it and nothing happened!! Could you please tell me what it does and how to press it? Thanks Could you please tell me what
Command z
@@Exodai-Academy Thanks, but what does it do? How did you align center everything with command z ?
Thanks bro for these video. That saved my weekend
About the discussion with your friend about deleting the user: You only need to delete the information that can be used to identify the user e.g. email and name :) Keep up the good work! :D
Wow someone who actually listens and watches my videos haha. Respect Hendrik 😘. Yeah true indeed. But I prefer a force or hard delete. So everything gone so if ever something happens they can’t come complain to me haha.
@@Exodai-Academy hahah, yeah that is what I prefer too - super paranoid about keeping their data after deletion 😅
Looks like you really really like clicking your mouse.
nice video please more update about uikit and swift
Your tutorials are missed 😢
I have recorded the next 5 videos, I just had so many issues with sound I have to re-record them. Next week I will have tine ad record the last few videos of this series :) Just prepare yourself on the next series where we are going to build the Academy Website using Swift ;)
That’s going to be great.
Great video exodai… y hope finish the last videos soon :’)
Do you want to send the code of this video to your github? I want to follow and learn
My apologies for the choppiness of this video. In this video we are actually doing something I never did before and it looks like amateur hour haha. O and yes, in this video we make a really big mistake which we have to fix alter.
I am not sure how saving the Model and UUID which leads to performing another query is a bad practice? relational databases is made for this thing! what If you changed the name of the author? you will need to search the whole database for that old name and replace it with the new name?
Performance wise you ideally want to make as less queries as possible. Especially because most relational databases are heavy on the hardware it runs on. Especially PostgreSQL which we are using is not a light database. Maybe bad practice was not the right name for this I agree. Are you enjoying the series?
❗ Promo sm
you can use CMD + N to get the ~
whats the benefit of using the service instead of putting all in the controller?
Reusability. Now you can call services separately without calling a complete controller. For example when you have a controller that needs to call multiple functions to get information and you only need 1 of those functions to run for another function you can just call the needed service or subservice instead of the whole controller
@@Exodai-Academy i appreciate your answer. 👍 did my First approach without the Service layer But i See the Benefits. I would say it depends on the size of the project. // Feedback I watched your Whole Series and to improve your Future Videos i would like to Share some ideas - dont Show your whole process on all Controllers Service etc Focus on one and explain your thoughts behind every Step you do to get some insights - maybe explain some of your steps in More detail Instead of Just Talking down your written Code - please change the background Music. I feel i get the vibe in my dreams After the whole series xD + good overview about your whole concept + nice Voice , Calm and relaxing + you Show errors instead of hiding Them to look Perfect! I like that Ty
Hey B, Of course it has 100 percent to do with the scope of the project. if you use vapor as a small backend for your Portfolio website or Blog you are not going to implement services layer but you put everything in the controller. But i add the Services layer because not all the code i write is in the videos, some code i keep private for certain other systems. Like for example I’m not sharing the code for subscriptions and webshop part. Services just come in handy when you run multiple functions which need the same information. Thank you for the feedback. I will work on the points you added :) There are 10 more videos in the series so i hope you enjoy. The series after this is going to be, Build a website using Swift. There we go to extend the API with an actual website and a website backend in Swift. Is also going to be interesting. Yeah tbh I can’t watch coding videos where they edit out all the issues. I never edited out mistakes even in the paid courses i sold in the past. I think it is important to see the debug flow. And i experienced that watching heavy edited videos lets people believe they suck at coding, and I don’t want that. The background music is more to hide some breading noise haha. I have had a cold for the last 6 years now so sometimes you hear it in the videos. Btw You going to see a really big mistake in this series which gets fixed at the end of the series ;) SIncerely Johan
i'm falling in love with this course, Sir your are amazing,
Im happy you like it. Enjoy the rest and stay tuned. I have something cool launching later this year 😎
Thank you for your effort, very useful video
Always happy to help :)
I still have a question. The updateAt attribute in CourseModel needs to be triggered by .update(on:). Is it not necessary to use save in func update but use update instead
.save does the same as .update() I just find .save easier to use
or (!~) In fact, this is the same as the first method (~~)
Why do I get an error when calling this method? try app.autoMigrate().wait() Fatal error: Error raised at top level: PostgresNIO.PSQLError(backing: PostgresNIO.PSQLError.(unknown context at $101169b1c).Backing) 2023-04-23 16:43:35.638489+0330 Run[45611:1387943] Swift/ErrorType.swift:200: Fatal error: Error raised at top level: PostgresNIO.PSQLError(backing: PostgresNIO.PSQLError.(unknown context at $101169b1c).Backing)
Did you setup a Database with Docker and the database setup in configure.swift?
Why is there no 13th video?
Video 13 drops on Monday :) This series launches 3 videos a week. Every Monday, WednesDay and Friday.
I wanted to take a moment to express my gratitude for your excellent video tutorial on Swift server side development. Your insights and guidance have been incredibly helpful in deepening my understanding of this complex topic.Your clear explanations and step-by-step demonstrations have made the learning process smooth and enjoyable. I appreciate your willingness to share your knowledge and expertise with the community.Thanks to your tutorial, I have been able to make significant progress in my own Swift server side project, and I look forward to continuing to learn from you in the future.Once again, thank you for your generosity and dedication to helping others in the development community.
Great content!
ty kind sir
Great video! Which code editor is this?
Xcode
In model some of your fields have array propertie below. I can't understand how it will be stored in the database.
In a later video you will see how this works. After the models we will write the migration where it will be clear how this works. . And you can store arrays in PostgreSQL using the .array(.property)
Btw. Just a little information. A lot of stuff we do in this series can be changed at the end of the series. I recorded and developed the API in a "real world" kind of idea so stuff can always change when you find a better solution.
@@Exodai-Academy Ok, thank you.
Hey thank you for this!
How did you link between the view controller and main?
What about SwiftUI?
step by step please!