96 lines
2.9 KiB
Markdown
96 lines
2.9 KiB
Markdown
# Summary
|
|
A local app for local people.
|
|
A community-driven "Things To Do Near Me" platform that combines features of interactive maps, events, and local social recommendations.
|
|
Discover and share local events, hidden gems, activities, and experiences on an interactive map.
|
|
# Detailed Design
|
|
User should be able to create an event, search for events (MVPs), and share events (future).
|
|
Two users groups: Users who create events, and users who search for events. Users can be in both groups.
|
|
Interactive map with pins for events, and a list view of events.
|
|
Users can filter events by radius, category, tag, date, and location, etc.
|
|
## Functionality
|
|
|
|
### User Creates an Event
|
|
|
|
- Fills out form
|
|
- Form includes:
|
|
- Event Address
|
|
- Event Name
|
|
- Event Description
|
|
- Event Start Time
|
|
- Event End Time
|
|
- Rain Date
|
|
- Price
|
|
|
|
- Images
|
|
- Category
|
|
- Tagging (optional)
|
|
- RSVP Needed (optional)
|
|
- Contact Info (optional)
|
|
- Share Email (optional)
|
|
- Event Size (how many people will go) (optional)
|
|
- Event Size Maximum (optional)
|
|
- Select category from dropdown
|
|
- Live Performances
|
|
- Public Art
|
|
- Local Tours
|
|
- Festivals
|
|
- Street Fairs
|
|
- Craft Shows
|
|
- Holiday Events
|
|
- Community Gatherings
|
|
- Charity Events
|
|
- Food and Drink Events
|
|
- Classes
|
|
- Farmers Markets
|
|
- Flea Markets
|
|
- Yard Sales
|
|
- Children's Activities
|
|
- Hiking
|
|
- Garden
|
|
- Camping
|
|
- Apply tags to event (optional)
|
|
- Family Friendly
|
|
- Free
|
|
- Outdoor
|
|
- Indoor
|
|
- Pet Friendly
|
|
- Date Night
|
|
- Group Activity
|
|
- After filling out form:
|
|
- Direct to the event page
|
|
- Event page allows editing, cancelling
|
|
- share on all platforms
|
|
|
|
### User Searches for an event
|
|
- Types in location, or read location
|
|
- Provides radius (default provided)
|
|
- Events populate
|
|
- events are clickable and show more Info
|
|
- ability to say they are going to an event (require login)
|
|
- email event to me, or others
|
|
- share on all platforms
|
|
- user can add event to list of events associated to their account
|
|
- users can filter events by category, tag, date
|
|
- users can comment on events, and post pictures of events that they went to (require login)
|
|
|
|
## User Flow
|
|
|
|
## Web Pages
|
|
1. An interactive map page with pins for events, and a list view of events.
|
|
2. An event creation page with a form for users to fill out.
|
|
3. An event detail page that shows more information about the event.
|
|
4. An event editing page that allows users to edit or cancel their events.
|
|
5. An introduction page that explains the app and its features.
|
|
## DB Structure
|
|
|
|
## API Endpoints
|
|
|
|
## Authentication
|
|
Unique link for each event that can be used for editing and cancelling.
|
|
|
|
Future step:
|
|
- User accounts with email and password, or social login (Google, Facebook, etc.)
|
|
|
|
# Dependencies
|
|
- Frontend: React, Leaflet for interactive maps, and a UI library like Material-UI or Tailwind CSS.
|
|
- Backend: Django for API development, SQLite for database management, and like AWS S3 for image storage.
|