Giter Site home page Giter Site logo

my-crud's Introduction

My-Crud Project

A simple CRUD project with HTML + Javascript + CSS, NodeJS and MySQL running on Docker.

To get it ready, simple run a docker-compose up on this project root folder.

There are some post-ready scripts inside the docker-config that are run automatically. If you need some info, dig on it!

Learning Plan:

The objective of this training is to get a simple CRUD application using the above mentioned tools and help the learners to visualize different layers communicating with each other.

Requirements:

  • Basic understanding on Docker and Docker-Compose, Nginx/Apache, MySQL, HTTP Requests/APIs.

List of subjects and estimated time:

1. Present the project business model and requirements (CRUD of users entity) - 30m;

2. Present the general overview of the project infrastructure - 4h:
   a. Docker setup;
   b. Nginx, NodeJS and MySQL servers on containers;
   c. Serving volumes to the containers;
   d. Services first time dependencies and configurations (scripts and entrypoints);
   e. Communication between containers (network and ports);

3. Dig into the project (debug everything) - 8h:
    a. The database structure;
    b. The backend server:
        b.1. NodeJS basic overview (dependencies, nodemon, express, app.js/server.js);
        b.2. Database connection instance;
        b.3. Routes, models and controllers;
        b.4. Creating HTTP Requests with Postman;
    c. The HTML + Javascript components and its methods;
    d. Debugging the Frontend + Backend communication on the CRUD methods.

4. Practice (4d+-):
   a. A sample of this frontend + backend files will be given to the traineers and it will be asked them to configure the services in a way like this project, using Docker, Nginx, NodeJS and MySQL. Considerations:
        a.1. The docker-compose will not be supplied.
        a.2. It is possible that this practice will require some days to be completed.
        a.3. We're using the premise that we need to focus on the service side rather than development, but without a glimpse of dev, its more difficult to visualize everything working together.
    b. Exercises: 
        1. Configure a new docker-compose with all the services working togheter and with the frontend and backend folders served to the containers.
        2. Implement only the method 'search by name like' to actually create an end to end feature;
        3. Fix bugs on services after they are intentionally inserted into the environment.

my-crud's People

Contributors

victordevtavares avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.