Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/anandpiyush1521/reactspring
VicharStream - VicharStream is a dynamic blog management application that allows users to publish and manage blog content with ease.
https://github.com/anandpiyush1521/reactspring
java jpa-hibernate postgresql reactjs spring-boot spring-security tailwind-css tailwindcss
Last synced: about 2 months ago
JSON representation
VicharStream - VicharStream is a dynamic blog management application that allows users to publish and manage blog content with ease.
- Host: GitHub
- URL: https://github.com/anandpiyush1521/reactspring
- Owner: anandpiyush1521
- Created: 2024-06-07T20:06:35.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-11-21T08:38:46.000Z (about 2 months ago)
- Last Synced: 2024-11-21T09:30:39.903Z (about 2 months ago)
- Topics: java, jpa-hibernate, postgresql, reactjs, spring-boot, spring-security, tailwind-css, tailwindcss
- Language: JavaScript
- Homepage:
- Size: 2.07 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# VicharStream
## Overview
VicharStream is a web application that provides user registration, OTP verification, and other functionalities. It is built using Spring Boot for the backend and React for the frontend, with Tailwind CSS for styling.
## Features
- User Registration and Login
- OTP Verification for Password Recovery
- Protected Routes for Authenticated Users
- User Management
- Email Notifications## Backend
The backend is built using Spring Boot and provides RESTful APIs for user management, OTP verification, and email notifications.
### Key Files and Directories
- [`server/src/main/java/com/application/server/controller/ForgotPasswordController.java`](server/src/main/java/com/application/server/controller/ForgotPasswordController.java): Handles password recovery requests.
- [`server/src/main/java/com/application/server/controller/UserController.java`](server/src/main/java/com/application/server/controller/UserController.java): Manages user registration, verification, and login.
- [`server/src/main/java/com/application/server/service/Impl/UserServiceImpl.java`](server/src/main/java/com/application/server/service/Impl/UserServiceImpl.java): Implements user-related services.
- [`server/src/main/java/com/application/server/service/Impl/EmailService.java`](server/src/main/java/com/application/server/service/Impl/EmailService.java): Sends email notifications.
- [`server/src/test/java/com/application/server/service/EmailServiceTest.java`](server/src/test/java/com/application/server/service/EmailServiceTest.java): Unit tests for the email service.### User Registration and OTP Verification
## Frontend
The frontend is built using React and styled with Tailwind CSS. It provides a user-friendly interface for registration, login, and other functionalities.
### Key Files and Directories
- [`client/src/App.js`](client/src/App.js): Main application component that sets up routing.
- [`client/src/components/ForgotPassword.js`](client/src/components/ForgotPassword.js): Component for password recovery.
- [`client/src/components/Footer.js`](client/src/components/Footer.js): Footer component.
- [`client/src/pages/Home.js`](client/src/pages/Home.js): Home page component.
- [`client/src/index.css`](client/src/index.css): Tailwind CSS configuration.## Getting Started
### Prerequisites
- Node.js
- npm
- Java
- Maven### Installation
1. Clone the repository:
```sh
git clone https://github.com/your-repo/vicharstream.git
cd vicharstream
```2. Install frontend dependencies:
```sh
cd client
npm install
```3. Install backend dependencies:
```sh
cd ../server
./mvnw install
```### Running the Application
1. Start the backend server:
```sh
cd server
./mvnw spring-boot:run
```2. Start the frontend development server:
```sh
cd client
npm start
```### Running Tests
#### Backend Tests
To run backend tests, use the following command:
```sh
cd server
./mvnw clean package
```#### Frontend Tests
To build the frontend for production, use the following command:
```sh
cd client
npm run build
```