Introduction

What is Full Stack?

  • A full stack feature in software development refers to a feature or functionality that spans both the front end (client side) and the back end (server side) of an application.
  • This means that the feature includes everything from the user interface and user experience (what the user sees and interacts with) to the server, database, and logic that make the feature work behind the scenes.
  • The components or stack of this feature are usually as follows
    1. Frontend, the part that the user interacts with
    2. Backend, the sever side of the feature, handling requests, interactions with the database
    3. Database, Where the apps data is stored and managed
    4. API, The Application Programming Interface allows the fronted to connect and communicate with backend

Framework

  • When creating the backend and frontend of your project you should have a clear answer to these two questions
    1. What data will need to be stored for my feature to work, and what endpoints are needed for my feature?
    2. What will the wireframe for my feature look like, and how will it be auto-generated?
  • The questions above are what make your feature unique, no matter the feature there will always be a certain partition of the code that is the exact same
  • If you’re able to answer these questions above you will have no problem in seeing the vision of your feature

How to answer the questions with your idea

  • In these documents im going to be creating a announcement API, so I will be creating that when I talk about my own feature
  1. Question #1
    • For a announcement, I’m going to need an ID (standard in every database), author, title, body, time, and tags data
    • For the endpoints think about how this data need’s to be accessed besides the usual CRUD (Create/Read/Update/Delete) methods, maybe a fetch by author or tag
  2. Question #2
    • Search for similar wireframes online on what to base your feature off of, maybe similar to how tweets look
    • It will be auto generated by generating each announcement on top of each other with the most present at the top

My example


ID Author Title Body Timestamp Tags
           

My thoughts, why you should do this

My thoughts on the matter

  • The problem with fullstack development is no doubt the barrier entry in terms of knowledge that is needed
  • Knowing how to create API’s with specific endpoints, or self generating javascript wireframes, it seems like an impossible tasks, much easier to do one or even none of what i listed
  • Through my experience in the Nighthawk CS route I found that most slackers in groups came from a place of self dismissal “I can’t do this”, “Im never gonna understand this”
  • My goal from these blog posts is to make this development as simple as can be, by taking you through these steps
  • Hopefully if you follow the steps of this notebook, you will be able to use this as a reference for the creation of your’e own features