Skip to content

VC-create/sleepover1

Repository files navigation

  1. My project is called Jokes. It is a website made with a free jokes api. It's Pirates of the Carribean themed because why not? :) It starts off on the home page with a CSS animation and then takes you to the main jokes page, where you can get one random joke by clicking the medallion and favorite the joke if you wish. You have the option to see your favorited jokes as well. On this page, you can also get one random joke from one of four categories (general, programming, knock-knock, and dad) by clicking on the different characters, under which the type is specified. There is always a delay before the punchline of the joke appears, and if you click on another image, the timer for the punchline resets. There is an image of a compass between the characters, and when you click on it, you get taken to a page where you can enter any number and get that many random jokes. You also have the option to enter a number for a specific category and get that number of jokes from that category. Also, sometimes a surprise image pops up! You can navigate between all these pages with buttons.
  2. I made this project to practice using an API and Javascript. I also wanted to refresh my HTML and CSS skills.
  3. I made this project in Github Codespaces with HTML, CSS, Javascript, and using this API: https://github.com/15Dkatz/official_joke_api.
  4. I struggled with implementing the timer for the joke because using timers in Javascript was new to me. I also sturggled to brainstorm features with the API's limited commands. For example, for the page where you can get any number of jokes by type, I realized I had to use a loop because the API didn't have a command for that. I learned how to use timers and local storage to store the favorite jokes, both of which were new to me. I also learned more about logic and debugging because new issues kept popping up. For example, I didn't want users to favorite the same joke multiple times and I also only wanted the favorite button to show up for jokes that weren't already favorited. I also learned how to make code more efficient by reusing functions and passing in parameters to get the jokes from the different categories. Finally, it was also my first time using multiple commands from an API and using a try catch block for errors. Overall, this project definetly taught me a lot about Javascript and how to handle errors. I really enjoyed making the animations and thinking of the aesthetic. I hope to make my own APIs in the future and more onto more complex projects.
  5. Images are from DeviantArt, Reddit, Cyprus Boats, Kingdom Hearts wiki, Fortnite wiki, VS Battles wiki