This project was my first time really working with mongodb and also mongoose. This is my showcase on how I made my own api that contain a user, their thoughts, reactions to those thoughts, and if a user has friends. So far the reactions and friends are not working at the moment which I would want to improve on in the future. However the users and thoughts are there and working as intended. The idea of this api is that this could be apart of a larger website where users login/signup who want to shoot out a random thought and have other users react to their thoughts. Since twitter exists already a site like this would be hard to start up however that was not the point of this api. Like I said it was to get down and dirty and learn some form of nosql and I think I achieved that :).
The tech used in this app are as follows: Node Js, Javascript, Mongodb, Mongoose, Express, And lastly Nodemon to keep my server running while I work on it.
Name: Brandon Diaz
Contact email: [email protected]
GitHub: 1Clide1
To install this api you can first clone my repo, once that is done make sure to also have mongodb installed. If those are checked off the list then you are able to go into the project in your favorite ide of your choice, open this folder in either an integrated terminal or to open this folder in a terminal like git or git bash. npm i
(assuming you also already have node js) to install the dependencies, and lastly you can either open insomnia or use this project to create a full stack website based on this api's idea.
As of right now the only way to use this app is for testing how it works with insomnia or another app that you can send http requests to the server once it is up and running.
My final thoughts is that in some ways nosql is definetly easy to use and at least for the most part really understandable reading wise. The main difficulty was using my knowledge and trying to learn more on mongodb and mongoose on how they work. I feel like I probably should have did some more research in that department because most of the features where understandible until I ran into the virtuals and I also feel like I am not sure I understand fully about subdocuments like my friends or reactions and how exactly to incorpriate that into the routes. As of right now I did not incorpriate those into the routes but I am also sure if I just brush up on how they work it will be a simple add which I will try to do in the future. I mainly wanted to do what I knew and also mainly try to use the try and catch method when making routes and I think I did that pretty well. Overall I feel like I learned a lot and this is a great stepping stone to move foward in my journey of trying to become a full stack developer.
This project is licensed under the MIT License: To get a better look at [License] visit (https://choosealicense.com/licenses/mit/).
MIT License
Copyright (c) [2021] []
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.