# 2 weeks in - time for a first recap

Looking back, it all started about three or four weeks ago. I had "finished" my previous side project, [alc4.me](https://alc4.me?utm_source=reposter&utm_medium=post&utm_campaign=20250612), so my brain started to look for new ideas to work on. As I was already running a Bluesky repost bot and was thinking about starting a new one, I got the idea of creating a little "platform" that would allow me to easily configure such bots **and** to run them in a more controlled environment than my previous implementation.

The last few weeks I had also started to read along in [r/SideProject](https://www.reddit.com/r/SideProject/) and r/buildinpublic. So I decided to build a platform that could be used by others as well (aka "SaaS") and to share my progress about it publicly. This post is the first result of the latter.

## What has happened so far

The first thing I worked on was the backend, which provides all the required functionalities, such as authentication, user management, bot management, and more. Creating the required APIs was quite easy, as I had done things like this several times. But for the first time, I actually incorporated authorization using the "login with Google functionality". And thanks to this [great tutorial](https://blog.futuresmart.ai/integrating-google-authentication-with-fastapi-a-step-by-step-guide) by @[Sakalya Mitra](@sakalya21), it was quite easy to achieve.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1749742944955/fdc57a87-b863-452c-9e88-3d35f029d7e5.png align="center")

Of course, all this backend work also included learning about and integrating dynamoDB as the backend database.

Next was the actual bot runner. Again, this was not too hard as I had done similar things before, and I could also reuse parts of the code of my old implementation. The trickiest part here was getting the Bluesky session handling correct so my bots would not get rate-limited again. One of the main reasons I decided to implement my bot handling new from the ground up.

The third step was implementing the frontend. This was by far the most complicated thing, as I usually do not do a lot of frontend development. I started with a basic React solution. Again, because I had seen some React before. But luckily, the one and only [@MadeMyDay](https://bsky.app/profile/mademyday.bsky.social) convinced me to check out Vue as he strongly prefers it over React. And I must say, I do not regret looking into it at all. So, after learning a lot, trying several component libraries, I finally got the first working version of the frontend done.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1749721641559/83d338b4-1c0f-4505-8f56-58eaae2bede5.png align="center")

So, after these first two weeks, I have a frontend that allows me to interact with the system. A backend that stores data and allows interaction with the data. And a scheduler that is running two bots as of now (will share some statistics in one of my next posts).

## Next steps

As usual, there are a lot of things to be done. But these are the bigger ones that are on my agenda for now:

* As you could very clearly see in the screenshots, some basic styling of the frontend is required. So I am pretty sure that I will do some more improvements on this side. Tailwind, here I come!
    
* To have a smooth onboarding journey, I will include some transactional emails. I’ve done first tests but the overall onboarding needs to be defined.
    
* Share more about the progress and the stack I am using
    
* Getting in touch with people to get feedback on this project
    

## Questions? Wanna join?

I would be really happy to hear from you. And it does not matter if you have questions, feedback, ideas, or even think the whole thing is not worth it ,-). Any of your feedback is welcome.

Also, if you want to be part of the pre-pre-alpha users, just ping me and we can see what we can do.

You can find me on Bluesky ([@fez.world](https://bsky.app/profile/fez.world)), Reddit ([fez\_de](https://www.reddit.com/user/fez_de/)), or GitHub ([fezde](https://github.com/fezde)).
