Prompt Me Tender is a web application designed to assist users in retrieving suggestion about a trip or an holiday to schedule. It only needs few details in order to accomplish its purpose. The application leverages a user-friendly interface and a robust backend to provide tailored prompts based on user input. It uses Gemini AI for prompting, Next.js as framework, Vercel for deployments plus React, Tailwindcss and shadcn for styling.
You can test the application by clicking here.
- User-Friendly Interface: Intuitive design that allows users to easily navigate and generate prompts.
- Customizable Prompts: Users can input specific criteria to receive tailored suggestion based on four variables.
- Responsive Design: The application is optimized for both desktop and mobile devices.
- Open Source: The project is open for contributions and improvements from the community.
To set up the project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/Nefas666/prompt-me-tender.git cd prompt-me-tender
-
Install dependencies:
npm install
-
Set up environment variables:
Create a
.env.local
file in the main directory and add the necessary environment variables listed in this table:
Variable | Description | Options |
---|---|---|
API_KEY |
string |
Required. Your API key generated by your favourite AI model provider |
BLOG_NAME |
the name of your project, displayed below the avatar | |
BLOG_TITLE |
the main header (h1 ) on the home page |
|
BLOG_FOOTER_TEXT |
the text in the footer | |
BLOG_THEME |
the theme to pass to Tailwind | default |
BLOG_FONT_HEADINGS |
the font-family for all HTML headings, from h1 to h6 |
sans-serif (default), serif, monospace |
BLOG_FONT_PARAGRAPHS |
the font-family for all other HTML elements | sans-serif (default), serif, monospace |
-
Start the application:
cd client npm run dev
-
Access the application: Open your web browser and navigate to
http://localhost:3000
to view the application.
- Generating Prompts: Enter your criteria in the input field and click the "Suggest" button to receive a prompt.
- Saving Prompts: Users can save their favorite prompts for future reference.
- Sharing Prompts: Users can share generated prompts with others via social media or direct links.
- Edit the original prompt: You can edit the API call prompt from the directory
pages/generate.js
, add components from shadcn manually in thecomponents/ui/LibraryComponent.tsx
.
We’ve included some tooling that helps us maintain these templates. This template currently uses:
- Renovate - to regularly update our dependencies
- Cypress - to run tests against how the template runs in the browser
If your team is not interested in this tooling, you can remove them with ease!
In order to keep our project up-to-date with dependencies we use a tool called Renovate. If you’re not interested in this tooling, delete the renovate.json
file and commit that onto your main branch.
For our testing, we use Cypress for end-to-end testing. This makes sure that we can validate that our templates are rendering and displaying as we’d expect. By default, we have Cypress not generate deploy links if our tests don’t pass. If you’d like to keep Cypress and still generate the deploy links, go into your netlify.toml
and delete the plugin configuration lines:
[[plugins]]
package = "netlify-plugin-cypress"
- [plugins.inputs.postBuild]
- enable = true
-
- [plugins.inputs]
- enable = false
Contributions are welcome! If you would like to contribute to the project, please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature/YourFeature
). - Make your changes and commit them (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature/YourFeature
). - Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for more details.
For more information, visit the Prompt Me Tender website or check out the GitHub repository.