Joke Machine is a joke generation and explanation platform that allows users to generate, search for, save, and understand jokes. The purpose of the project is to provide a platform for those to engage in jokes and understand in a way that is efficient and useful. Users can generate or search up jokes, ask for explanations, and sort their list of favorite jokes based on rating of the jokes. Joke Machine integrates with external APIs for joke generation and explanation to provide rich and diverse humor content.
Joke Generation: Generate new jokes with a variety of themes and styles. Joke Explanation: Explain jokes, whether generated by the app or provided by the user. Favorites Management: Save favorite jokes to revisit later. Search and Filter: Search for jokes by title or keywords (e.g., themes like "911"). Search for jokes within saved list of jokes Filter jokes by rating to find the "funniest" jokes.
-
Before setting up the project, make sure you have the correct software installed。
- Java Development Kit (JDK) version 11 or higher: https://www.oracle.com/java/technologies/javase-downloads.html
- IntelliJ IDEA Community or Ultimate Edition: https://www.jetbrains.com/idea/download/
-
Once you have the software setup:
- Clone the repository:
- Open the Project in IntelliJ:
- Launch IntelliJ IDEA.
- Go to file and click New --> Project From Version Control.
- Paste the clone and open project.
- Install Dependencies:
- Ensure that your project dependencies are configured in a build.gradle or pom.xml file.
- If using Maven, IntelliJ will automatically import dependencies defined in pom.xml. If using Gradle, open the build.gradle file, and IntelliJ will synchronize the dependencies.
- Run the Application:
- Locate the Main class (or equivalent entry point) in your project.
- Right-click on the file and select Run 'Main'.
- Enter a username and password in the fields provided to login.
- Select the "Generate" button to create a new joke or search up joke by title or keyword
- If you don’t understand a joke, click on the "Explain Joke" button. The system will provide an explanation of the joke's humor or meaning.
- Click "favorite" to add a joke to your favorites list.
- Access your favorites anytime from the "favorited" section.
- Keyword Search: Enter a keyword (e.g., "911") to find jokes related to that theme.
- Funniest Jokes: Use the "Funniest" filter to sort saved jokes by their humor rating.
This project is released under the Creative Commons CC0 1.0 Universal (CC0) Public Domain Dedication. See LICENSE for details.
Providing Feedback:
- Please submit your feedback through the Google Forms link provided:
- https://docs.google.com/forms/d/e/1FAIpQLSeqU8_6mZD_O4UUip36SM_Mf-7HdN1i8Qhy5KolPGqcwP-WEw/viewform?usp=sf_link
- (When providing feedback, please provide specific comments or implementations or changes)
Contributing to the Project:
- Fork the Repository:
- Click the "Fork" button on the top right of the repository page to create a copy of the project under your GitHub account.
- Clone the Repository:
- Create a New Branch:
- "git checkout -b feature/new-feature"
- Make Your Changes:
- Add or change features
- Submit a Pull Request:
- Commit and push your changes to your fork and open a pull request in the main repository.
- Provide a description of your changes explaining why they are valuable in the merge request
- We will review the changes and get back to you!