All AI Prompts

Entries
Student#CategoryPrompt TitlePromptProgress
CameronL0OverallApp Overview

I am creating an app that allows users to rate different types of media. This app will allow users to rate and discuss different types of media that they have consumed, as well as discover new media that aligns with their interests. Users can rate books, movies, TV shows, video games, music, and any other types of media that they are interested in, and view the ratings and reviews that others have given. Inspired by sites such as Letterboxd, Album of the Year, and Goodreads.

Completed
CameronL1Data LayerAccessing Data

I want to be able to pull down sets of data on media such as books, music, movies, and video games so that users can rate them and share info.  What is the best way to set about about pulling down data for these items? I would like to be able to pull both new releases as well as the most popular pieces of media overall. I would prefer to use free APIs that are reliable.

Started
CameronL2Data LayerDatabase Structure

Create a database that contains the necessary tables and structure to create this app. There should be tables for the users, as well as a way to link these users as friends and followers. Users should have a section that identifies their preferred genres, for the purpose of displaying relevant media recommendations elsewhere on the site. For the types of media, create tables containing the name of the media, as well as other pertinent information, such as the year of release, writer, etc. For now, create tables for movies, books, and music. Specifically contain sections identifying the genre(s) that a piece of media belongs to. Also indicate whether a piece of media is a new release and therefore should be displayed on the homepage. Create the database in a way that can accept the data pulled from the APIs identified earlier. Make the database easy to understand and flexible enough to accommodate the addition of other types of media later on.

Use this file as a guide - media_app_erd.png

Completed
CameronL3UICSS File

Use this file: design-system.css as a guideline for the UI design for this app.

 

Completed
CameronL4Basic FunctionMovies

Build the functionality for rating movies. On the page for each movie, include the name, date of release, genres, poster, and a brief synopsis. For now, add 10 generally well known movies, I will connect an API later on to populate more. If you cannot find certain needed information, such as the poster, simply use a generic placeholder. Be sure that users can rate the film out of 100, and that the mean of all given scores is displayed. Also allow users to write an up to 500 character review of the film and have others view it.

Completed
CameronL5Basic FunctionMusic

Build the same functionality for the music, again putting in 10 placeholder works. Reuse code when possible.

Completed
CameronL6Basic FunctionUser Homepage

Create a profile page for the user. One tab should have account information, such as username, email, change password, etc. Another tab should allow the user to view works that they have rated, and overall information about their ratings, such as preferred genres and score distribution. There should also be functionality to view pieces of media that they wish to consume and/or review in the future. Also add the ability for users to add media to this list from the page for that piece of media.

Completed
CameronL7Basic FunctionSocial Features

Add social features, such as the ability to follow and friend other users. Users should be able to follow other users at will and have reviews from those users show up at the top of the list for viewed works. Becoming friends with another user should require both users accepting the request. Reviews from these users should be prioritized above followers. Additionally, friends should be able to recieve notifications when another friend posts a review.

Completed
CameronL8Basic FunctionMovie API

Please find an API that I can use for the movie section, containing the needed information, including the poster. The API must be free, and I would prefer if it did not require a key. If need be, more than one API may be used.

Completed
CameronL9Basic FunctionBooks API

Using the Open Library API, build an importer the same way as was used for music and movies

Completed
Elizabeth0UIOverall View of App

I find it very annoying to plan out the menu for the week based on who is home and what their favs are.  Also would like to get family buy in.

Planning a week of family dinners is tedious and repetitive — it means remembering who's home which nights, whose preferences to weigh, and trying to keep some variety in protein types (not five nights of chicken in a row). Right now this happens in someone's head or a scattered text thread, and it's easy to default to the same five meals because thinking it through each week is annoying. This app solves that by storing family members, their meal preferences, and a meal database, then generating a suggested weekly menu that accounts for who's actually home and keeps proteins mixed (e.g., 2 chicken, 2 fish, 1 red meat, 1 vegetarian). It matters because it removes the weekly mental load and gets family buy-in by letting people react to the plan instead of having no say in it. Risk/assumption: the suggestions are only as good as the preference data people actually enter — if family members don't rate meals, the AI has nothing to weight against.

Not Started
Elizabeth2OverallSolutions OVerview

The app will be built with HTML/CSS/mySQL/PHP and as little JavaScript as possible. Please use classes with PHP. Make sure SQL is secure - especially SQL injection. Reuse code as much as possible and design the CSS for the whole app not just one page at a time. Family members and meals will be stored in a database (see Database Architecture). Each week, the user marks who will be home. A first pass of plain code (not AI) filters the meal database down to meals that satisfy the protein-mix rule (2 chicken/2 fish/1 meat/1 veggie) and excludes anything a present family member has marked as disliked. That filtered candidate list is then handed to an AI call, along with each present family member's preference ratings, and the AI ranks/selects the best 6 meals for the week from the candidates — this is the one "fuzzy" judgment call that's hard to hand-code well. The result is shown as a suggested weekly menu, and each family member can approve or swap individual meals.

Make my file structure so that there folders for CSS, images, classes and includes.

Make sure to add in error checking and data validation for all user input including testing edge case. If getting data from an API - what happens if it fails to connect? Gets bad data.

Elizabeth3Data LayerTable Structure
  • FamilyMembers: id, name
  • Meals: id, name, protein_type (chicken/fish/meat/veggie)
  • Preferences: family_member_id, meal_id, rating (like/dislike/neutral) — links the two tables above
  • WeeklyPlan: week_id, night, meal_id, status (suggested/approved/swapped)
Elizabeth4UIHome Page

Main page shows the current week as 5–7 rows, one per night: night name, suggested meal, protein tag, and a swap/approve button next to each. A sidebar or top bar lets you toggle which family members are home this week. A separate simple page lists all meals in the database with an "add meal" form (name + protein type), and another lists family members with their preference ratings.

LouiseOOverallreserve seating

make the reserve seating button functional, when you reserve seating I want it to show up under a seats reserved tab or something, when you reserve a seat I want there to be an option to reserve storage space in the same car

 

What Ai wrote:

In my PHP app "Seat Saver" at /Users/louiseoconnell/Herd/seat-saver, the ride cards on index.php have "Reserve seat" and "Reserve storage" buttons that are currently just non-functional placeholders (<button type="button">, no backend). The reservations table already exists in config/schema.sql (trip_id, passenger_id, wants_seat, small_count, medium_count, large_count, unique per trip+passenger) but nothing uses it yet.

Please make this functional:

  • A rider can reserve a seat on a ride. When reserving a seat, also let them optionally reserve storage space in that same car in the same flow, rather than as two separate actions.
  • Reserved seats/storage should reduce the ride's remaining open counts (seats_open/small_open/medium_open/large_open on that trip) so other riders see accurate availability, and a rider shouldn't be able to over-reserve past what's actually open.
  • For storage specifically: apply the cascading rule we already decided on for this app — if the exact size a rider wants (e.g. small) is full but a bigger size (medium/large) still has room, let them use that instead of blocking them.
  • Add a way for a user to see their own reservations — something like a "My rides"/"Seats reserved" view showing what they've signed up for, with the ability to cancel/withdraw a reservation they no longer need (which should give the seat/storage back to the pool).

Match the existing app's conventions (CSRF protection, prepared statements, session-based auth, the existing card/button/list styling already used elsewhere) — you have freedom on the exact implementation, page names, and function structure, just keep it consistent with how the rest of the app is built.

Started
LouiseOOveralloffered rides

What I wrote:

currently there is only a tab for "My rides" that shows the rides and storage reserved by the user, I would like there to be two of those one that shows the rides and storage reserved by the user and one that shows the rides that are being given by the user or that the user has signed up to give

What Ai wrote:

In my PHP app "Seat Saver" at /Users/louiseoconnell/Herd/seat-saver, there's currently a "My Rides" page (pages/my_rides.php) that only shows rides/storage the user has reserved as a passenger. I want this split into two views under "My Rides": one for rides the user is riding as a passenger (the existing view), and a new one for rides the user is driving/has offered to drive (created via the existing "Offer a ride" flow).

Let the driver see their upcoming offered rides — which event/car/time each one is for, who (if anyone) has reserved a seat or storage on it — and let them cancel a ride they're offering if they need to. Use whatever tab/sub-page structure fits naturally with the rest of the site's navigation and styling; keep it consistent with the existing look and feel rather than introducing a new design pattern.

Started
LouiseOOverallcancellations

When driver cancels a ride, notifying a cancellation means both an in app status change and notification at the top of the homepage for those who reserved seating and/or storage in their car

Ai:

In my PHP app "Seat Saver" at /Users/louiseoconnell/Herd/seat-saver, when a driver cancels a ride (pages/trip_cancel.phpcancel_trip()), the in-app status change on the passenger side already exists — pages/my_rides.php's "Riding" tab already shows "Cancelled by the driver" for any reservation where trips.is_cancelled is true (via get_reservations_for_user(), which already selects t.is_cancelled), and there's already a "Remove" button there (posting to pages/reservation_cancel.phpcancel_reservation()) that deletes the reservation and gives the seat/storage back to the pool.

What's missing: passengers with a cancelled reservation should also see a notification banner at the top of the homepage (index.php), not just have to notice it on the My Rides page. Please add that.

  • On index.php, above the rides list, show a dismissible banner if the logged-in user has any reservation where the trip is cancelled — something like "One of your rides was cancelled" with which event/date it was, and a link to pages/my_rides.php?view=riding to see details.
  • For "dismiss," reuse the existing removal flow rather than inventing new state to track: the banner going away permanently once a cancelled reservation is removed is already how cancel_reservation()/reservation_cancel.php behaves, so a "Dismiss" button on the banner can just post to that same endpoint. Don't add a separate "acknowledged" column or notifications table for this — the existing cancelled-reservation-until-removed model already covers it.
  • Match the existing banner/alert styling already used elsewhere (.alert, .alert--error/.alert--success in css/style.css) rather than introducing a new visual style.
  • If the user has more than one cancelled reservation at once, show all of them (not just the first).

 

Completed
LouiseOOverallmake groups

What I wrote:

I want to create communites/groups for users, so different sports teams/clubs etc can use the website. I want the role of captain to stay the same for all of the groups, to create a group a user creates the join code, that other users will use to join the group. You can leave, edit, and add more groups under the account tab. One user can participate in multiple groups and toggle between them. The role of captain can vary for each group, and the user that creates a new group is automatically a captain.

What AI wrote:

I have a PHP app called "Seat Saver" at /Users/louiseoconnell/Herd/seat-saver (Laravel Herd local dev, plain PHP, no framework — includes/functions.php holds all DB queries as procedural functions, includes/header.php/footer.php are shared layout, pages/*.php are individual pages, config/schema.sql is the canonical schema for fresh installs, config/migrations/*.sql holds incremental ALTER scripts applied to the existing local database). It's currently a single-team rideshare/events app: users.role (member/captain) is a single global flag on the user, and events/trips/reservations aren't scoped to anything beyond the whole app.

I want to turn this into a multi-tenant app supporting separate groups/communities — different sports teams or clubs each running their own independent space on the same site. Please design and build:

Data model

  • A groups table (name, a unique join code, who created it, created-at).
  • A group_members table linking a user to a group, with a per-group role (member/captain) — captain status is scoped to one group, not global. A user can belong to many groups, and hold a different role in each.
  • events need to belong to a group (add a group_id). Trips and reservations don't need their own group column since they're already reachable through their event.
  • Cars stay global to the user (not scoped to a group) — the same physical car is usable across whichever groups its owner drives for. State this assumption clearly in your plan; flag it to me if you think it should work differently.

Migrating existing data

  • The live local database already has real users (some with role = 'captain') and no groups. The migration needs to create a default/legacy group, add every existing user to it as a group_member with their current role carried over, and assign all existing events to that group — so nothing currently in the database breaks or disappears. Don't just drop the old users.role column and lose that information.

Permissions

  • is_captain() and require_captain() in includes/functions.php currently check a global session role — change them to check the caller's role within whichever group is currently active (see below), not a global flag.

Creating, joining, editing, and leaving groups

  • Any logged-in user can create a new group by giving it a name; this generates a join code and makes that user its captain automatically.
  • Any logged-in user can join an existing group by entering its join code, joining as a regular member.
  • A group's captain(s) can edit that group (e.g. rename it, regenerate its join code).
  • Any member can leave a group they're in (should probably be blocked, or handled sensibly, if they're that group's only captain — use your judgment, just don't leave a group captain-less with no way to ever manage it again).
  • Put all of this — the list of groups a user belongs to (with their role in each), join, create, edit, and leave — under the existing pages/account.php page.

Switching between groups

  • A user in multiple groups needs to toggle which one is "active" — store the active group in the session, and everything group-scoped (the rides dashboard on index.php, pages/events.php, event creation/editing, the captain-only UI) should reflect whichever group is currently active. Add a simple switcher somewhere sensible in the nav/header for changing it.
  • Handle the case of a brand-new user with zero groups yet (e.g. right after registering) — they should land somewhere that lets them join or create their first group, not hit a broken/empty dashboard.

Match all existing conventions: CSRF (csrf_field()/csrf_verify()) on every form, prepared PDO statements, declare(strict_types=1), htmlspecialchars() on all output, and reuse the existing .card/.form-group/.btn/.ride-list CSS classes rather than inventing new styles. Write this as both an update to config/schema.sql (for fresh installs) and a new numbered file in config/migrations/ (for the existing local database) — check that directory for the next available number.

This is a big change — before considering it done, trace through the app as if you were two different users in two different groups and confirm events/rides genuinely don't leak across groups, and that every new page (create group, join group, switch group) is actually reachable by clicking through the UI, not just present in the code. A past pass on this app shipped a fully-coded page with no nav link pointing to it, so don't repeat that.

Completed
LouiseO1OverallInform AI.

I am creating an app which is described here:

This program helps make planning and transportation from Jackson-Reed to the boathouse more simple and organized. It will create a space for teammates to reserve seats in cars driving to the boathouse, reserve space in cars for their stuff to be transported to the boathouse. It also provides a space for drivers to sign up to drive, make storage space and seats available for teammates to claim and allows drivers to mark pick-up locations and departure times.

My Solutions Overview is :

HTML CSS My SQL

File structure so that there are folders for CSS images classes and includes

Config?

Re-use as much code as possible

Design CSS for the whole app not just one page at a time

Shared header and footer

Ensure that SQL is secure

Add in error checking and data validation for all user input including testing edge cases

User object with username, password, how many seats and storage space the users car has

layout should adapt to fit any device (make sure functional on phones especially)

More than one user table?

Completed
LouiseO2UserCreate user Functionality

Create a basic landing page at index.php that allows the user to login, create an account and reset password.

Completed
LouiseO3UIDesign Overall UI

UI - overall look and feel - colors/vibe/ - example page.

Layout of home page. drawing.

Use Claude.ai - to hellp create logo.  Talk to claude.ai - to flesh this out.

MargaretPOverall

Make it so that when the user is looking at the list of exercises in the create workout function there is an option where they can click on an exercise and read the description of the exercise

Not Started
MargaretPBasic FunctionAdd workout logging flow

Prompt 1: Add a "Start Workout" button to the plan detail page. On click, create a row in workout_sessions with user_id, plan_id, started_at = now(), status = 'in_progress', then navigate to a new (currently blank) active-session screen showing the plan name and a running elapsed-time counter based on started_at.

Prompt 2: On the active-session screen, list the exercises from the plan (via plan_exercises) in order, pre-filled with target sets/reps/weight/duration/distance as placeholders. For each set, let the user confirm or adjust actual values and save it as a row in session_exercise_logs. Use steppers (+/- buttons) for reps/weight instead of requiring the keyboard. Save each set immediately on entry, not in a batch at the end.

Prompt 3: Support starting a session with no plan (plan_id = NULL). On the active-session screen for these sessions, let users search the exercise library (reuse the existing search/filter UI) and add exercises to the session, then log sets using the same set-logging UI from Step 2.

Prompt 4: Add a "Finish Workout" button that opens a summary screen where the user enters: date (defaulted from started_at, editable), heart rate avg/max (optional), calories (optional), steps (optional), and notes (optional, free text). On save, update the session: ended_at = now(), status = 'completed', and store the entered fields.

Prompt 5: On app load, check if the logged-in user has a session with status = 'in_progress'. If found, prompt them to resume (return to the active-session screen with previously logged sets intact) or discard (status = 'abandoned', ended_at = now()).

Prompt 6: Add a "Log a past workout" flow: same summary form as Step 4, but started_at/ended_at are both manually entered, and all exercise sets are entered at once (not live) via a simpler form.

Started
MargaretPOveralllogo homepage

Make it so that clicking the logo takes you back to the homepage

Completed
MargaretP1OverallOverall Scope

MVP Workout 2.0 will be a fully customizable workout creating and tracking app. Users will have the option to create workouts from lists pre-existing and custom exercises. Once users create their workouts they will be able to log workouts by entering information such as time, steps, heart rate, calories, and notes. More advanced functions will allow users to set goals, add friends, access calendar views, and see average length of time of their workouts.

Completed
Student#CategoryPrompt TitlePromptProgress