I've started a new project. It's a platform that makes it easy to deliberately practice Python fundamentals using spaced repetition. I'm giving a lifetime discount for any user who joins my mailing list before launch as well.
The web application is built using React + TailwindCSS and FastAPI. PostgreSQL is the DB.
I've really enjoyed working in this stack and it's my first time using the FastAPI framework.
FastAPI is pretty awesome. It auto-generates API docs, uses type-hinting, and makes for fast development of new endpoints. The auto-generated interactive docs are such a time saver. It makes it an extremely fast development experience for me.
I'm taking a page from other smart founders and keeping deployment simple for now. I'm not worried about scaling out multiple servers, setting up load balancing, etc. I'll see if I can get some actual users first when I launch.
Here's what I've got so far!
I'm not a great designer but using TailwindCSS makes things a bit easier.
Lesson Admin page:
This page is done enough for MVP. I can edit a lesson, deploy it to users, and add new lessons all from this page.
Lesson Creation page:
This is what editing an individual lesson looks like right now for an admin. I've added most of the functionality but still have some kinks to work out. I need to add a block that will allow user's to input their answer. When they input an answer in this block, an API request will be sent to the backend and will return an assessment on whether they got the question right or wrong.
And that's it for the front end! There's a lot less visually exciting stuff going on in the backend for the API and DB. A lot of the work so far has been on that portion of the stack.
Overall, I'd say I'm getting pretty close to a beta stage. Most of the admin/backend/API and lesson creation stuff is done or near-done. I haven't started on creating the UI a user would see for each lesson yet.
I'll be sure to update y'all when I've made some more progress. Also join my mailing list to hear more about the backstory!