Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/i-am-tj/pulse
🌐 Pulse is a dynamic and interactive platform built with Spring Boot that serves as a close counterpart to the immensely popular Reddit platform. It allows users to post updates, engage with content, and participate in discussions, creating a vibrant and engaging community experience. 📝
https://github.com/i-am-tj/pulse
java jpa spring-boot swagger-ui
Last synced: about 2 months ago
JSON representation
🌐 Pulse is a dynamic and interactive platform built with Spring Boot that serves as a close counterpart to the immensely popular Reddit platform. It allows users to post updates, engage with content, and participate in discussions, creating a vibrant and engaging community experience. 📝
- Host: GitHub
- URL: https://github.com/i-am-tj/pulse
- Owner: i-am-tj
- License: mit
- Created: 2024-03-31T05:48:38.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-04-26T06:36:30.000Z (10 months ago)
- Last Synced: 2024-10-31T09:21:10.867Z (3 months ago)
- Topics: java, jpa, spring-boot, swagger-ui
- Language: Java
- Homepage:
- Size: 91.8 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Pulse
Welcome to Pulse, a Reddit clone built with Spring! Pulse aims to provide a platform for users to discover, share, and discuss content on various topics.
## Features
- **User Authentication and Authorization**: Allow users to register, login, and manage their accounts.
- **Post Creation and Voting**: Enable users to create posts, vote on posts, and comment on posts.
- **Community Creation**: Allow users to create and manage communities for specific topics.## Technologies Used
- Spring Boot
- Spring Security
- Rest Template
- MySQL DB (or your preferred database)
- Hibernate (or your preferred ORM)
- Maven (or Gradle) for dependency management
- Git for version control## Prerequisites
Before you begin, ensure you have met the following requirements:
- Java Development Kit (JDK) 8 or later installed on your machine.
- Maven installed on your machine for building and managing dependencies.
- MySQL DB or a compatible relational database installed and configured.
- Git installed on your machine for version control.## Installation
Follow these steps to set up and run Pulse on your local machine:1. **Clone the repository:**
```sh
git clone https://github.com/i-am-tj/Pulse.git
2. **Navigate to the project directory:**
```sh
cd Pulse
3. **Configure the database:** \
Open src/main/resources/application.properties and modify the database settings as needed.
4. **Build the project:**
```sh
mvn clean install
5. **Run the application:**
```sh
mvn spring-boot:run
6. **Access Pulse in your browser:** \
Open a web browser and go to http://localhost:8080 to access Pulse.## Docker
This project is also Dockerized. Below are the instructions to pull and use the Docker image from Docker Hub.### Prerequisites
Before you begin, ensure you have Docker installed on your system. If not, you can download and install it from [here](https://docs.docker.com/get-docker/)
### Pulling the Docker Image
You can pull the Docker image for this project from Docker Hub using the following command:
```bash
docker pull tanujchakraborty21/pulse:1.0
```### Running the Docker Container
Once you have pulled the image, you can run a container using the following command:
```bash
docker run -p 8080:8080 tanujchakraborty21/pulse:1.0
```This will start the Spring Boot application inside a Docker container, and you can access it at http://localhost:8080 in your web browser.
## Swagger UI
Pulse includes Swagger UI for interactive API documentation. To access Swagger UI, follow these steps:1. Run the application as described in the installation instructions.
2. Open a web browser and go to http://localhost:8080/swagger-ui.html.
3. Explore the available API endpoints and test them directly from the Swagger UI interface.## Contribution Guidelines
Please read our [Contribution Guidelines](CONTRIBUTING.md) to learn how to contribute to this project.
## Code of Conduct
We expect all contributors to adhere to our [Code of Conduct](CODE_OF_CONDUCT.md) to ensure a welcoming and inclusive community.
## License
This project is licensed under the [MIT License](LICENSE) - see the [LICENSE](LICENSE) file for details.
## Contact
If you have any questions, suggestions, or need assistance, feel free to reach out:
- **Name:** Tanuj Chakraborty
- **Email:** [email protected]
- **GitHub:** [github.com/i-am-tj](https://github.com/i-am-tj)
- **LinkedIn:** [linkedin.com/in/i-am-tj](https://www.linkedin.com/in/i-am-tj/)