FastMunchies is a a Web application for ordering food, built using the MERN Stack. Users can create an account, browse menu and place orders.
-
As you have progressed through this course, you have put together a number of impressive projects that you can show off to potential employers.
-
Writing about tech can be just as important as making it.
-
This project is no exception; in fact, it features some of the most impressive expressions of the concepts you have learned so far.
-
Testing is key to making code maintainable, you’ll also write unit tests for each part of your code and ensure that it passes all of them.
-
A major aspect of this challenge was the balance between figuring out which solution made sense and the solution that would be most efficient.
-
Developers spend plenty of time creating new applications and debugging existing codebases, but most developers also spend at least some of their time reading and writing about technical concepts, recent advancements, and new technologies.
-
A simple Google search for any concept covered in this course returns thousands of think pieces and tutorials from developers of all skill levels.
-
Being a web developer means being part of a community. You’ll need a place to share your projects not only if you're applying for jobs or working as a freelancer but also so that you can share your work with fellow developers and collaborate on future projects.
we will be using the following technologies:
- Node.js
- React
- MongoDB
- Express
- Mongoose
- Heroku
- PROTECTED API KEY
- JWT (authication)
- Stripe (payment)
-
To run this, if you want to test before you submit, you must do a build first, npm run build, and then do npm run start:dev Both are run from the root. The front end is at localhost 3000.
-
In order to install inquirer, i used npm i [email protected]. apollo-server-express (npm i apollo-server-express) bcrypt (npm installl bcrypt) dotenv (npm install dotenv) express (npm install express) graphql (npm install graphql) jsonwebtoken (npm install jsonwebtoken) mongoose (npm install mongoose) stripe (npm install stripe --save)
-
This Challenge will combine many of the skills you’ve learned over the first ten weeks of this course. To help you get started, we’ve provided some guidelines in addition to the User Story and Acceptance Criteria.
-
Make sure that you remove dist from the .gitignore file so that Git will track this folder and include it when you push up to your application's repository.
With your group, you’ll again conceive and execute a design that solves a real-world problem. In creating your first collaborative MERN-stack single-page application, you’ll combine a scalable MongoDB back end, a GraphQL API, and an Express.js and Node.js server with a React front end, implementing user authentication with JWT to build a user-focused platform. You’ll continue to build on the agile development methodologies you’ve used throughout this course. These include storing your project code in GitHub, managing your work with a project management tool, and implementing feature and bug fixes using the Git branch workflow and pull requests.
For this project, you should start from scratch. Doing so will allow you to revisit your front-end abilities in the context of React and solidify your understanding of working with multiple servers in a MERN application. Your skills have continued to improve since the first two projects, so naturally your approach will be different considering the experience you’ve gained with each new application you’ve built.
Your group will use everything you’ve learned throughout this course to create a MERN-stack single-page application that works with real-world data to solve a real-world challenge, with a focus on data and user demand. This project will provide you with the best opportunity to demonstrate your problem-solving skills, which employers will want to observe. Once again, the user story and acceptance criteria will depend on the project that you create, but your project must fulfill the following requirements:
Use React for the front end.
Use GraphQL with a Node.js and Express.js server.
Use MongoDB and the Mongoose ODM for the database.
Use queries and mutations for retrieving, adding, updating, and deleting data.
Be deployed using Heroku (with data).
Have a polished UI.
Be responsive.
Be interactive (i.e., accept and respond to user input).
Include authentication (JWT).
Protect sensitive API key information on the server.
Have a clean repository that meets quality coding standards (file structure, naming conventions, best practices for class and id naming conventions, indentation, high-quality comments, and so on).
Have a high-quality README (with unique name, description, technologies used, screenshot, and link to deployed application).
Finally, you must add your project to the portfolio that you created in Module 20.
You should also consider the following suggestions to help your project stand out.
- Include any other screenshots you deem necessary to help someone who has never been introduced to your application understand the purpose and function of it. This is how you will communicate to potential employers or other developers in the future what you built and why, and to show how it works.
- The front end is at localhost 3000.
Being a web developer means being part of a community. You’ll need a place to share your projects not only if you're applying for jobs or working as a freelancer but also so that you can share your work with fellow developers and collaborate on future projects.Projects have played a key role in your journey to becoming a full-stack web developer. As you apply for development jobs, your portfolio is absolutely vital to opening doors to opportunities. Your portfolio showcases high-quality deployed examples of your work, and you can use your finished projects for that very purpose.
This project is a fantastic opportunity to show employers your collaborative skills and coding abilities, especially in the context of a scalable, user-focused MERN app. Remember that employers want to know what you can do, but they also want to know how you work with other developers. The more examples of deployed collaborative work you have in your portfolio, the more likely you are to get an interview and a job.
- AARON PADILLA
- ANDREI FLOREA
- CAMERON CROTEAU
- MALAYAH DEMBY