Skip to content

sappoPrivy/Simple_fullstack_webapplication_with_authentication

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Fullstack Webapplication with Authentication using Spring boot and React Typescript

Code written by Tenzin Sangpo Choedon, Summer 2024

📄 Overview

This simple fullstack webapplication has a login, logout, sign-up, profile and home page with menu options. The original vision of this website is to create a fully functional todo-list, integrated with a calendar. Therefore, the database design includes tables for lists, tasks and planned tasks in the calendar. However, the focus shifted to understanding how to utilize and apply the technologies for frontend and backend through Spring Boot and React TypeScript, respectively. Thus, the scope was limited to authentication and home pages. The current fuctionalities includes all CRUD operations for a user instance, which is applied on the postgresSQL database in the docker container.

Demo

Watch the demo

🗂️ Table of Contents

🏗️ Project Structure

root/
├── backend/ # Spring boot Maven-based backend
│ ├── demo/
│ │ ├── src/main/
│ │ │ ├── java/com/example/demo
│ │ │ │ ├── user/ # User class, configurations, controller, respository and service layer files
│ │ │ │ └── DemoApplication.java
│ │ │ └── resources/applications.properties
│ │ └── Dockerfile
├── frontend/ # React Vite-based frontend
│ ├── src/
│ │ ├── assets/
│ │ ├── components/ # Reusable typescript components
│ │ ├── pages/ # Typescript pages
│ │ ├── styles/ # CSS styles
│ │ ├── App.css
│ │ ├── App.tsx
│ │ ├── UserContext.tsx
│ │ └── main.tsx
│ ├── index.html
│ └── Dockerfile
├── docs/
│ ├── database-design.png
│ ├── demo.mp4
│ └── Requirements.pdf
├── docker-compose.yml # Multi-container Docker applications (fronent, backend, db)
├── README.md
└── .gitignore

✅ Prerequisites

Docker

  • Download docker (ubuntu):
    sudo apt update
    sudo apt install -y docker.io

🚀 Usage

  1. Run the application through Docker
    docker-compose up --build
    • Database (PostgreSQL) runs in docker container locally
    • Frontend (React Typescript Vite-based app) runs on port 5173
    • Backend (Spring Boot Maven-based app) runs on port 8080
  1. Test the webapplication on the browser
    http://localhost:5173/
    http://localhost:8080/api/v1/user

📘 Documentations

📄 View the frontend design in Figma

📄 View the database design in drawio

📄 View the requirements of this project

About

Fullstack application with simple user authentication, including CRUD operations.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published