Inspiration
I hold a company in UK and file its accounts and when I learned I need to buy third party softwares for filling my returns then I thought about making my own and integrating it with desired advancements. But that is for CT600. However what this project is using is MTD APIs and since I file income tax returns from my own country, I thought I should make an app for this one too which has desired advancements. Now HMRC MTD makes it possible to bring advancements to the Tax filling procedure. So I am working toward this goal as software developer to innovate here and provide software in this category of technology with features which makes it easier to work with income tax.
What it does
The app mainly focuses on providing user with functionality to see their businesses, provide digital records to work with, and file cumulative period summaries for obligations.
It allows viewing records, editing them. One can see their period summaries of different formats with desired dates.
The app covers enough functionality of a working app right now.
How we built it
I am using Amplify for backend and its plugins like Cognito, Lambda, and data storage functionalities. And for front-end I am working with SwiftUI as cross-platform (Mac and iOS) app.
I started learning about this from MTD developer tutorials and articles (They are very thorough). Then I joined some live events to further understand the requirements as UK is working heavily towards making tax submission procedures easier and automated (by calculations I meant).
After some weeks of more research I finally started developing but this time I wanted to use Codex as whole project maker while me overseeing it.
So I started 2 weeks ago with basic Amplify setup and SwiftUI setup with Oauth2 flow and working out with access and refresh tokens.
But some days afterwards I received email from OpenAI about build-week hackathon (around 2-3 days from today). And I though I should develop the app further as part of this hackathon and at least deliver a workable functionality app which has features to be a standlone app (however can lack testing and certain design aspects). So I rushed the process a bit and finally worked out an app that does Oauth, Storage of access tokens, Listing of business and their details, fetch obligations, Fetch consolidated or non-consolidated cumulative period summaries, and also submits them and sends fraud prevention headers with relevant request (All in test). And with SwiftUI a new type of design I get to understand which is bit unconventional but straightforward.
Challenges we ran into
Not much, I just enjoyed working with Codes that so far nothing feels much challenging. Ah yes one thing was that tracking sometimes new type of code or new way to work with code was bit of a challenge but enjoyable. I get to see more Typescript ways to define and work with or pass along types (awesome). I get to see SwiftUI new awesome features which until now I thought were wall to me but now I see them in a separate beauty.
Sometimes working on same thread cases old snapshots of codes changes (Review button on codex) to fall with latest ones so I had to use multiple sessions/threads.
Accomplishments that we're proud of
I was able to build a standalone functioning app that is working in a test environment and now I see more code then ever below I can create more tests, more features, make it more robust and move forward with its advancements. (having a future vision of this project now feasible is what I am proud of).
What we learned
I learned a lot, working with Codex, then how to manage threads/sessions, fast tracking code differences, Typescript and SwiftUI new features. And much more.
What's next for BulBul SEQS
I will make it more robust. Try to make more test endpoint tests scenarios. Add more features. Fix any lingering bugs.
Built With
- amplify
- codex
- swiftui
Log in or sign up for Devpost to join the conversation.