IDS
This is where I will post progress reports and my final IDS project for this year.
So far in my IDS Project, I have made a working site. It doesn't have hosting as of right now, but I will sort that out soon. Now, the user can write and see messages. They have an input box, where they write their messages. Once they are sent, they are stored in google firestore, part of firebase. Then, the website displays all messages in the firestore database, as well as the user's google profile picture. Everything so far has gone incredibly smoothly, which was unexpected. Now, all I need for a final product is to integrate CSS, find hosting and a domain, and finally integrating any extra features if I have the time. Integrating CSS will allow me to customize the site, and make it look more visually appealing. While the current site is functional, it doesn't look good. Finding hosting should be easy, I will compare hosting plans between different services, to find the best value option. Just like I stated in the last update, I am still hosting the site locally. This allows me to test and frequently edit the site without any issues. Finally, integrating extra features is completely optional, and I will put more or less in depending on how much time I have between now and the deadline. In conclusion, I learned how to take user inputs, then add them to a Google Firestore database, and then display those inputs on a website. All my progress since the last update has been a great success, and I am nearing a finished product.
Finally, here are some screenshots of the functional app.
0 Comments
So far on my IDS project, I have integrated firebase, and react. I have used these for user authentication, react for the front-end and firebase for the back. Once the user is signed in using google, they will see the chat, which has yet to be developped. So far, the chat screen only has a sign out button, however there will be more soon. I had issues with importing packages. The packages I was importing contained functions written by others. I realised that I needed to import a specific part of the package to access the functions I wanted. For an example, to access the function useAuthState, finding the authentication state of the user (signed in or not), I needed to import it from "react-firebase-hooks/auth", instead of "react-firebase-hooks". I have attached some screenshots of the site so far, although it has yet to go live to the internet. I am hosting it temporarily on a local network, however once the project is done, I'm hoping for it to be accessible as a website. In conclusion, over the past few weeks I learned how to use firebase authentication, and how to import packages. The next steps I will take in the developpment of this site will be to develop the actual chat function.
For my IDS project this year, I will make a messaging web app. This will include users being able to log in, send messages to other users, and hopefully call with audio and video.
Due to the ambiton of this project, I will have multiple different stages of completion, but I'm hoping all of them will be good enough to hand in as a finished project. To start out, I will just make a simple chatroom, where all users can communicate with everyone else. Next, I will let users send direct messages to each other. After all that, if there's time, I will add calling functionality. As for a timeline, I would like to have the basic chatroom functionality done by mid october, however it may take more or less time. After that, I will focus on bringing the service online, which shouldn't be too much trouble, although it is one thing that may cost money. After that, I will focus on adding more functionality to the app, including the features mentioned above. I'm hoping to get most of the project done by the beginning of december. For the front-end (client end code, such as a user interface) side of this project, I will be using ReactJS because it is widely used, and tutorials for the type of site I will be creating use it. For back end (server side code, such as a database) I will be using firebase, for similar reasons. The only problem with firebase is that it is a service offered by google, however it does have a free tier, and I don't think the site will be used often enough to use more than the free tier. I may also need to pay for a domain, but there are multiple services offering domains, and I will find one with affordable pricing once I have a domain name in mind. As for the evaluation of a finished project, it may be difficult to quantify success. If I needed to, I would probably grade it based off how well all the features work, rather than how many features the site has. I want something that is functional, and does what it's supposed to well, over something that does many things poorly. I think the project should be graded on how polished the app looks as well, because front-end is a massive part of development, and I'm learning all about web development, front and back end. These have been my main goals and timeline for my IDS project, and I am excited to see how this project will go. Further updates regarding progress of my project will be posted here. |
AuthorWrite something about yourself. No need to be fancy, just an overview. Archives
November 2021
Categories |