How to get started with my first web app AND is firebase a good option for this?

Hi all,

so after multiple times trying to learn the basics of different coding languages (html, css, javascript, python) with tutorials on various websites (codecademy, udemy, freeCodeCamp) AND quickly forgetting most of what I’ve learned because of the lack of getting some practice working on real projects, I really would like to take a different approach this time and finally realize a real coding project.

The project I would like to realize is to build a (simple) league management website for my tennis club. Until today we have been using google spreadsheets to store the results of our tennis matches and the league admins have been updating the results and standing tables on our website manually . I would like to build a simple responsive web app to automate, simplify and optimize this process.

The following features should be included:

  • log-in system >> each club member gets his/her own account
  • all content (league standings, results, match dates…) only visible when logged in
  • results-form to enter new results into database
  • new results update the league standings automatically
  • (nice to have) super-users can edit all results and set different tie-breakers for different leagues

So I know some basic html and css as well as javascript, but no sql. A friend of mine told me about firebase and that it might be a simple option to install a log-in system and provide the database needed for my project.

Before I dive into yet another tool, does firebase sound like a viable option for this? I really don’t want to spend yet another 4 weeks learning the basics of another coding language (sql ?) but rather start working on a project and figure out the stuff I need to know along the way…

Any advice on this would be greatly appreciated.

-Florian

1 Like

Hello and welcome to the freeCodeCamp community~!

My personal experience with Firebase is extremely limited. However, one thing I have heard from a few people is that, to really leverage the features that Firebase offers, your project has to be 100% committed to the integration.

My understanding is that this means you’ll be writing a lot of code that’s specific to Firebase, which works if you are dedicated to diving in, but will result in a lot of headache if you want to integrate other providers and/or migrate your app to a different platform.

1 Like

Hello @krausinski welcome to freeCodeCamp!

This sounds like a good project :slight_smile:

The log-in system is one of the better features of Firebase, and your simplified security rules should be easily replicated without much work in Firebase’s security rules for Firestore (the newer database option in Firebase).

So the biggest issue I see with using Firebase, is the fact you will be learning the basics of another system. Firebase isn’t much more than an API, platform that you will use to host/run/operate your application, but that does mean you need to learn how it works. It also means you can’t do anything and everything you want, as the platform is set and can’t be changed, you just have to work with what it provides.

So far your requirements do fall under what a Firebase+Firestore+hosting setup would work just fine. Just watch out for horror stories, and be sure to design your data/app in such a way you keep costs low.

So yes, Firebase can work for you, but it isn’t a perfect solution, and will limit you in the future. If your current requirements are the only requirements for this app, then yea go for it with caution.

Good luck! Keep building, keep learning :slight_smile:

1 Like

Thank you all!

@bradtaniguchi:
I will try to avoid owing Google huge amounts of money. I honestly thought that since we are only about 60 players using the app (and I don’t plan to build something that scales up to huge numbers of users), I can stick with the free plan for Firebase. But I will make sure to double check, before going live…

You might be able to sneak in under the free tier with just 60 user’s and not pay anything. As pointed out above, the horror stories are generally due to bad design where the app scales exponentially, as long as you stay away from that, you should be fine :slight_smile: