ankitdev10 / Ankit-Poudel-SimplifiedDashboard-Task

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tech Stack

Backend

  • Nest JS
  • GraphQL
  • Apollo Server
  • JWT

Database

  • postgres

ORM

  • TypeORM

Frontend

  • React
  • Next
  • ShadCN UI
  • Apollo Client
  • GraphQL

Installation

git clone https://github.com/ankitdev10/-Ankit-Poudel-SimplifiedDashboard-Task.git or git@github.com:ankitdev10/-Ankit-Poudel-SimplifiedDashboard-Task.git

The api directory contains the backend code and the client directory contains the frontend code.

With docker

A little side note. There are two ways to run compose file. One is using docker-compose and another is using docker compose. One is written in Python while other is written in go.

Prefarably please use docker compose and not docker-compose(I have incosistent issue with docker-compose. You may not face the issue)

- Run `docker compose down -v` to remove all containers and volumes (Crucial becaue there might be postgres instance with same creds already in docker container)
- Run `docker compose build --no-cache` to build the containers
- Run `docker compose up` to start the containers
  • Now you can access the API at localhost:4000/graphql
  • The frontend is at localhost:3000

I have not ignored the env file for the reviewer's convience. So you can just start the container b following steps mentioned above

VERY IMPORTANT

  • Please clear the cache of your browser because the localhost may already have the cookie set.
  • Takes 8 minutes to build on my machine. May differ on yours.

Key Points

  • Whenever a new container is initialized, the program automatically creates a database and inserts dummy data so that the tables are not empty.

You can login to fronend with the following credentials

username: superadmin
password: password123
  • Due to time constraint, I was not able to make the sidebar collapsible.

About


Languages

Language:TypeScript 98.3%Language:CSS 1.3%Language:JavaScript 0.2%Language:Dockerfile 0.2%