4
4 Comments

Building a platform for practicing Python fundamentals. Using React + FastAPI is a delightful stack for me!

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!

Landing Page

Landing Page

I'm not a great designer but using TailwindCSS makes things a bit easier.

Lesson Admin page:

LessonAdminPage

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:

LessonCreationPage

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!

  1. 1

    Looks cool (FastAPI is awesome). But form returned an error when I tried to sign up

    1. 1

      Oh weird. Well thanks for letting me know, I sent a support email in to my newsletter provider to check it out

  2. 1

    What about a headline like "Learn Python 5x Faster Using Spaced Repetition".

    Spaced repetition as a learning method has a lot of research behind it, and explaining that could help IMO.

    1. 1

      Oh I love that tagline. Thanks! I'll think about finding a way of incorporating it. Maybe I could look up the stats on average learning speed using spaced repetition and use that in the tagline.

Trending on Indie Hackers
How I grew a side project to 100k Unique Visitors in 7 days with 0 audience 49 comments Competing with Product Hunt: a month later 33 comments Why do you hate marketing? 29 comments My Top 20 Free Tools That I Use Everyday as an Indie Hacker 18 comments $15k revenues in <4 months as a solopreneur 14 comments Use Your Product 13 comments