Giter Club home page Giter Club logo

courses-fullstack's Introduction

Courses Microservices


License

๐Ÿ“ Project

A fullstack application allows users to browse a comprehensive list of available courses and seamlessly enroll in their preferred course. It is built using microservices architecture and GraphQL for efficient data fetching and mutation operations.

Key Features

  • Course Listing: Provides users with a clear overview of available courses.
  • Enrollment: Enables users to easily enroll in courses of interest.
  • Microservices Architecture: Built with a modular architecture to ensure scalability and flexibility.
  • GraphQL Integration: Utilizes GraphQL for efficient and declarative data fetching and mutations.
  • Auth0 Authentication: Provides an easy way to integrate authentication and authorization for web, mobile, and legacy applications.

Screenshot_2

Screenshot_3

Screenshot_4

๐Ÿ’ป Techs

  • Next.js 14
  • NestJS
  • Microservices
  • KafkaJS
  • Apollo
  • GraphQL
  • Auth0
  • TailwindCSS

๐Ÿ’ก How to run

To run the application on your local machine, make sure you have Node.js, npm and Docker installed before proceeding with the steps below:

  1. Clone the project:
$ git clone https://github.com/luc-ribeiro/courses-fullstack
  1. Run docker compose:
$ docker compose up -d

Make sure all services are running!

  1. Navigate to each folder of the project:
$ cd purchases
$ cd classroom
$ cd gateway
$ cd web
  1. Install the dependencies on each folder:
$ npm install
  1. Start each server:
$ npm run start:dev
  1. Start the Next.js app on web folder:
$ npm run dev

โš ๏ธ Important: To access the GraphQL playground:

http://localhost:3333/graphql: Purchases microservice

http://localhost:3334/graphql: Classroom microservice

http://localhost:3332/graphql: Gateway

http://localhost:8080: Kafka UI

๐Ÿ“ License

This project is licensed under the MIT license.

courses-fullstack's People

Contributors

luc-ribeiro avatar

Watchers

 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.