Developers November 28, 2020

How would you build this? 👇

Emre @emredemirel


A novice frontend dev here. Recently an idea is itching my brain but since I am not a very good dev, I am not sure how exactly I should build this.

Before what I need I must say that I prefer Gatsby, Netlify on the frontend side and build this as a jamstack app.

With that in mind, this app requires me to do auth, memberships and inside each member will have a dashboard where the day can attach external APIs.

We can imagine the app should do pretty much same things with lunchmoney and splitbee.

  1. User management
  2. Dashboard
  3. Reports
  4. Payment Gateaway

on Jamstack.

Do you know any existing app who managed to do such a thing and explained how they got through it? And if you'd build what kind of tech stack you'd choose?

PS: I know pretty much nothing regarding databases and server management and backend stuff.

PS 2: I will learn on the way because this is the only way I can learn. :)

Also, I built from scratch with Gatsby as well. If you wonder what I can do, I think that's a good example :)

  1. 4

    Assuming you are implying this idea is more than a personal project, I hope you don't mind if I add some comments here before you get too far down a rabbit hole.

    1. When building software, you should probably be creating the MVP before worrying about how the rest of this will play out. Take the path with the least resistance and build something that you can showcase (on here, or even to yourself for validation). There are multiple reasons for this, but the one I would stress is number 2...

    2. A general principal is to build software that is best for the user's experience. Claiming you are comfortable with JamStack themes is cool, and is a great place to begin. But deciding which tools you should use right now should not be a focus.
      After you get something viable, you can research similar services and papers to educate yourself from other people sweat and time. From there, you continue to plan out how to solve problems preventing completion. (This is a very gereral way of explaining what it is we do: we are problem solvers that find the solution first, and then use the "best tool" or language or whatever, fir the job.)
      If you try to fit the project into your comfort zone, it's not really going to become anything more than a pet project. Even if this idea doesn't make you want to explore finding solutions outside of the front end of the stack, you should still find a way to form a solution, and then ask for help from any individuals who are experienced in the specific skill-sets required to finish.

    Sorry, but nobody can honestly give advice as to if firebase or redis of fauna or anything is the right tool for the job. Your explanation of what needs accomplished is too vague. I hope you read this as a helpful indie hacker that's trying to help you rethink your approach because I want you to succeed. Good luck!

  2. 1

    Start with an admin portal template in a language you are experienced with to avoid the front end pitfalls and learning curve.

    Backend look at all micro services as API’s. Serverless would be the least headache once you understand serverless.yml config.

  3. 1

    Flamelink a CMS that integrates with Firebase is maybe what you are looking for?

    Firebase recently published a blog post about it.

  4. 1

    I tried to find the post(s), but there are tools out there which concentrate on the whiel "user management, authentication, payment" part, so that you can focus on your business. A bit like

    1. 1

      That sounds interesting. I still prefer a jamstack approach but handing over all those nitty-gritty stuff may actually speed up my validation process :)

  5. 0

    First of all gotta say heygamer is really freaking cool, and now to business, I would say you should go with firebase cuz its really simple to set up and build on it. It also takes care of user management, and you can use serverless functions that come with it to set up payment with stripe (or anything else). Feel free to reach out to me on twitter if you have any questions.

    1. 2

      I strongly suggest staying away from non-relational databases, especially ones that are proprietary and lock you in like firebase. Take a look at Hasura or Supabase, they are both built on the bullet-proof Postgres database. If you really need to store unstructured data, you can always use a Postgres json column type.

      1. 1

        I dunno Supabase is still in alpha and Hasura's pricing model is really confusing (to me atleast), I would say stick with firebase for now and if your app grows migrate to a proper backed.

    2. 1

      Thanks a lot :)

      I was thinking about firebase as well but I have never used it before. I hope I won't ruin anything. Also, do you know any node.js and database tutorial for absolute dummies like me? :)

      1. 1

        Based on personal experience when I was learning, I think you'll be able to learn how DBs work much more quickly by looking at a PHP book for complete beginners.

        The reason is because

        1. You already know HTML
        2. Interacting with a DB is a first class citizen in PHP

        With zero web dev experience, one weekend with Head First PHP & MySQL was enough for me do build a whole DB-backed site for the startup where I worked to accept job applications, survey the applicants, categorize their answers and filter them.

        Read the first few chapters of a book like that (or even that exact book) and then you'll have a 5x quicker learning experience working with DBs in a Node app.

        That is if you still want to invest the extra time time and effort to build it in Node...

      2. 0

        Depends on what type of DB would you like, if you don't wanna go the route of firebase like dbs, I would say go with mongo db. This is a really great series explaining you how to set up mongo node and graphql together.

Recommended Posts