Compare commits

...

11 Commits

Author SHA1 Message Date
oijkn 8191efeb84
Merge c0dda07665 into ad104922e1 2024-08-01 10:52:18 +02:00
Fatih Kadir Akın ad104922e1
Merge pull request #750 from nextdoorUncleLiu/develop 2024-07-31 11:53:59 +03:00
nextdoorUncleLiu 4c4ca14e05
Merge branch 'main' into develop 2024-07-31 16:37:47 +08:00
Fatih Kadir Akın f9d3913d84
Update README.md 2024-07-27 23:51:27 +03:00
Fatih Kadir Akın 799b4a14d7
Merge pull request #757 from buimatt/main
Restaurant Owner
2024-07-27 23:50:14 +03:00
Fatih Kadir Akın 4eac478c05
Merge pull request #756 from Mike-FreeAI/add-dark-mode
Add dark mode and publish to GitHub Pages using GitHub Actions
2024-07-27 23:49:37 +03:00
buimatt a31541a836
Update prompts.csv 2024-07-11 04:56:02 -07:00
buimatt 1f06568375
Update README.md
Restaurant Owner Prompt
2024-07-11 04:35:44 -07:00
Mike-FreeAI 4d388ecf9e Add dark mode and publish to GitHub Pages using GitHub Actions 2024-07-08 10:30:42 +01:00
liuxichen 5d0a253326 add prompt Architectural Expert 2024-06-12 17:46:08 +08:00
oijkn c0dda07665 Enhance prompt finder functionality and user interaction
Comprehensive update to the PromptFinder script, introducing several key enhancements:

- Implemented case-insensitive and partial match search in the 'act' column for more flexible user queries.
- Added automatic selection for a single search result to streamline the user experience.
- Improved the display of multiple search results to include both 'act' and 'prompt' values, providing users with clear context for each choice.
- Integrated KeyboardInterrupt handling to gracefully handle user interruptions and ensure a clean exit from the script.

These changes significantly improve the script's usability and robustness, offering a more user-friendly and reliable experience.
2024-01-23 11:27:14 +01:00
6 changed files with 202 additions and 5 deletions

33
.github/workflows/publish.yml vendored Normal file
View File

@ -0,0 +1,33 @@
name: Publish to GitHub Pages
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Ruby
uses: actions/setup-ruby@v1
with:
ruby-version: '2.7'
- name: Install dependencies
run: |
gem install bundler
bundle install
- name: Build site
run: bundle exec jekyll build
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./_site

View File

@ -2,10 +2,6 @@
[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
[![ContentCodex](https://github.com/f/awesome-chatgpt-prompts/blob/main/.github/contentcodex.png?raw=true)](https://contentcodex.ai/?via=fka)
**[Be my sponsor and your logo will be here and prompts.chat!](https://github.com/sponsors/f/sponsorships?sponsor=f&tier_id=319423)**
---
@ -94,6 +90,14 @@ The _unofficial_ ChatGPT desktop application provides a convenient way to access
---
## Dark Mode Implementation
We have implemented a dark mode for this repository to enhance your reading experience. The dark mode is implemented using CSS variables and a toggle button. You can switch between light and dark modes by clicking the toggle button.
## GitHub Pages Deployment using GitHub Actions
We have set up a GitHub Actions workflow to automatically publish this repository to GitHub Pages. This workflow ensures that the latest changes are always available on the GitHub Pages site. You can find the workflow configuration in the `.github/workflows/publish.yml` file.
# Prompts
## ChatGPT SEO prompts
@ -841,6 +845,16 @@ Contributed by: [@JulianFisla](https://github.com/JulianFisla)
>I want you to act as a person who plays a lot of League of Legends. Your rank in the game is diamond, which is above the average but not high enough to be considered a professional. You are irrational, get angry and irritated at the smallest things, and blame your teammates for all of your losing games. You do not go outside of your room very often, besides for your school/work, and the occasional outing with friends. If someone asks you a question, answer it honestly, but do not share much interest in questions outside of League of Legends. If someone asks you a question that isn't about League of Legends, at the end of your response try and loop the conversation back to the video game. You have few desires in life besides playing the video game. You play the jungle role and think you are better than everyone else because of it.
## Act as a Restaurant Owner
Contributed by: [@buimatt](https://github.com/buimatt)
>I want you to act as a Restaurant Owner. When given a restaurant theme, give me some dishes you would put on your menu for appetizers, entrees, and desserts. Give me basic recipes for these dishes. Also give me a name for your restaurant, and then some ways to promote your restaurant. The first prompt is "Taco Truck"
## Act as a Architectural Expert
Contributed by: [@nextdoorUncleLiu](https://github.com/nextdoorUncleLiu)
>I am an expert in the field of architecture, well-versed in various aspects including architectural design, architectural history and theory, structural engineering, building materials and construction, architectural physics and environmental control, building codes and standards, green buildings and sustainable design, project management and economics, architectural technology and digital tools, social cultural context and human behavior, communication and collaboration, as well as ethical and professional responsibilities. I am equipped to address your inquiries across these dimensions without necessitating further explanations.
## Contributors 😍
Many thanks to these AI whisperers:

View File

@ -1,2 +1,10 @@
name: Awesome ChatGPT Prompts
title: null
# Dark mode configuration
dark_mode: true
# GitHub Pages configuration
github_pages:
url: "https://<your-github-username>.github.io/<your-repo-name>"
branch: "gh-pages"

View File

@ -7,10 +7,45 @@
{% seo %}
<link rel="stylesheet" href="{{ "/assets/css/style.css?v=" | append: site.github.build_revision | relative_url }}">
<style>
:root {
--bg-color-light: #ffffff;
--bg-color-dark: #1a1a1a;
--text-color-light: #000000;
--text-color-dark: #ffffff;
}
body {
background-color: var(--bg-color-light);
color: var(--text-color-light);
}
body.dark-mode {
background-color: var(--bg-color-dark);
color: var(--text-color-dark);
}
.dark-mode-toggle {
position: fixed;
top: 1rem;
right: 1rem;
background-color: var(--bg-color-light);
color: var(--text-color-light);
border: none;
padding: 0.5rem;
cursor: pointer;
}
body.dark-mode .dark-mode-toggle {
background-color: var(--bg-color-dark);
color: var(--text-color-dark);
}
</style>
{% include head-custom.html %}
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-6945602608405209" crossorigin="anonymous"></script>
</head>
<body>
<button class="dark-mode-toggle" onclick="toggleDarkMode()">🌞</button>
<div class="container-lg px-3 my-5 markdown-body">
{% if site.title and site.title != page.title %}
<h1><a href="{{ "/" | absolute_url }}">{{ site.title }}</a></h1>
@ -47,6 +82,22 @@
}, false);
x.previousElementSibling.previousElementSibling.prepend(button);
});
function toggleDarkMode() {
const body = document.body;
body.classList.toggle('dark-mode');
const isDarkMode = body.classList.contains('dark-mode');
localStorage.setItem('dark-mode', isDarkMode);
document.querySelector('.dark-mode-toggle').textContent = isDarkMode ? '🌙' : '🌞';
}
document.addEventListener('DOMContentLoaded', () => {
const isDarkMode = localStorage.getItem('dark-mode') === 'true';
if (isDarkMode) {
document.body.classList.add('dark-mode');
document.querySelector('.dark-mode-toggle').textContent = '🌙';
}
});
</script>
<style>video { max-width: 100% !important; }</style>
<!-- Google tag (gtag.js) -->

View File

@ -166,4 +166,6 @@
"Prompt Enhancer","Act as a Prompt Enhancer AI that takes user-input prompts and transforms them into more engaging, detailed, and thought-provoking questions. Describe the process you follow to enhance a prompt, the types of improvements you make, and share an example of how you'd turn a simple, one-sentence prompt into an enriched, multi-layered question that encourages deeper thinking and more insightful responses."
"Cheap Travel Ticket Advisor","You are a cheap travel ticket advisor specializing in finding the most affordable transportation options for your clients. When provided with departure and destination cities, as well as desired travel dates, you use your extensive knowledge of past ticket prices, tips, and tricks to suggest the cheapest routes. Your recommendations may include transfers, extended layovers for exploring transfer cities, and various modes of transportation such as planes, car-sharing, trains, ships, or buses. Additionally, you can recommend websites for combining different trips and flights to achieve the most cost-effective journey."
"Data Scientist","I want you to act as a data scientist. Imagine you're working on a challenging project for a cutting-edge tech company. You've been tasked with extracting valuable insights from a large dataset related to user behavior on a new app. Your goal is to provide actionable recommendations to improve user engagement and retention."
"League of Legends Player","I want you to act as a person who plays a lot of League of Legends. Your rank in the game is diamond, which is above the average but not high enough to be considered a professional. You are irrational, get angry and irritated at the smallest things, and blame your teammates for all of your losing games. You do not go outside of your room very often, besides for your school/work, and the occasional outing with friends. If someone asks you a question, answer it honestly, but do not share much interest in questions outside of League of Legends. If someone asks you a question that isn't about League of Legends, at the end of your response try and loop the conversation back to the video game. You have few desires in life besides playing the video game. You play the jungle role and think you are better than everyone else because of it."
"League of Legends Player","I want you to act as a person who plays a lot of League of Legends. Your rank in the game is diamond, which is above the average but not high enough to be considered a professional. You are irrational, get angry and irritated at the smallest things, and blame your teammates for all of your losing games. You do not go outside of your room very often,besides for your school/work, and the occasional outing with friends. If someone asks you a question, answer it honestly, but do not share much interest in questions outside of League of Legends. If someone asks you a question that isn't about League of Legends, at the end of your response try and loop the conversation back to the video game. You have few desires in life besides playing the video game. You play the jungle role and think you are better than everyone else because of it."
"Restaurant Owner","I want you to act as a Restaurant Owner. When given a restaurant theme, give me some dishes you would put on your menu for appetizers, entrees, and desserts. Give me basic recipes for these dishes. Also give me a name for your restaurant, and then some ways to promote your restaurant. The first prompt is "Taco Truck""
"Architectural Expert","I am an expert in the field of architecture, well-versed in various aspects including architectural design, architectural history and theory, structural engineering, building materials and construction, architectural physics and environmental control, building codes and standards, green buildings and sustainable design, project management and economics, architectural technology and digital tools, social cultural context and human behavior, communication and collaboration, as well as ethical and professional responsibilities. I am equipped to address your inquiries across these dimensions without necessitating further explanations."

Can't render this file because it contains an unexpected character in line 170 and column 327.

89
scripts/find-prompt.py Normal file
View File

@ -0,0 +1,89 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
import sys
import pandas as pd
class PromptFinder:
"""
A class to search for prompts based on a given action from a CSV file.
"""
def __init__(self, csv_file_path=None):
"""
Initialize the PromptFinder with a CSV file path.
"""
self.csv_file_path = csv_file_path or self.get_default_csv_path()
if self.csv_file_path is None:
sys.exit("Error: CSV file not found in default paths or specified path.")
try:
self.df = pd.read_csv(self.csv_file_path)
except FileNotFoundError:
sys.exit(f"Error: CSV file '{self.csv_file_path}' not found.")
@staticmethod
def get_default_csv_path():
"""
Returns the first existing default CSV path, or None if none found.
"""
default_paths = ["../prompts.csv", "./prompts.csv"]
return next((path for path in default_paths if os.path.exists(path)), None)
def find_prompt(self, search_string):
"""
Find prompts based on the search_string.
:param search_string: The action to search for in the CSV.
:return: The found prompts or a message if no prompt is found.
"""
filtered_df = self.df[
self.df["act"].str.lower().str.contains(search_string.lower())
]
if len(filtered_df) > 0:
return filtered_df[["act", "prompt"]]
else:
return f"No prompt found for '{search_string}'."
@staticmethod
def display_and_select_prompt(results):
"""
Display prompts and allow user to select one.
:param results: DataFrame of found prompts.
"""
try:
if isinstance(results, str):
print(results) # No prompt found
elif len(results) == 1:
# Automatically select if only one prompt is found
return results.iloc[0]["prompt"]
else:
for idx, row in enumerate(results.itertuples(), 1): # Use enumerate for sequential numbering
print(f"{idx}. {row.act}: {row.prompt}")
choice = int(input("Select a prompt number: "))
return results.iloc[choice - 1]["prompt"]
except KeyboardInterrupt:
print("\nOperation cancelled by the user.")
sys.exit(0)
if __name__ == "__main__":
try:
csv_file_path = sys.argv[1] if len(sys.argv) > 1 else None
prompt_finder = PromptFinder(csv_file_path)
if not sys.stdin.isatty():
act_to_search = sys.stdin.readline().strip()
else:
act_to_search = input("Enter the ACT to search for: ")
found_prompts = prompt_finder.find_prompt(act_to_search)
if isinstance(found_prompts, str):
print(found_prompts)
else:
selected_prompt = prompt_finder.display_and_select_prompt(found_prompts)
print(f"Selected Prompt: {selected_prompt}")
except KeyboardInterrupt:
print("\nScript interrupted by the user.")
sys.exit(0)