Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/seanoliver/sharebnb-frontend-next
https://github.com/seanoliver/sharebnb-frontend-next
Last synced: 14 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/seanoliver/sharebnb-frontend-next
- Owner: seanoliver
- Created: 2023-05-20T04:28:57.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-05-28T01:05:05.000Z (over 1 year ago)
- Last Synced: 2024-12-22T05:13:30.675Z (about 1 month ago)
- Language: TypeScript
- Size: 84 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Sharebnb
A place to find and share amazing outdoor spaces.
## Setup
Run development server:
```bash
npm run dev
```## TODO
- [ ] Add script to generate listing & user data to populate DB
- [ ] Message notifications page## Component Tree
```mermaid
flowchart LRapp -->|index.tsx|ListingsPage
app --> AuthPage --> LoginForm & RegisterForm
app --> ProfilePage
app -->|"[id].tsx"|ListingPage
app --> SearchBarSearchBar -->|LocationFilter.tsx|LocationFilter
SearchBar --> DateFilter
SearchBar --> GuestFilterListingsPage --> ListingList --> ListingCard --> ListingPage
ListingPage --> ListingInfo
ListingPage --> Reviews
ListingPage --> HostInfoProfilePage --> UserInfo
ProfilePage --> UserListings
ProfilePage --> UserBookings```
## File Tree
```bash
.
├── app
│ ├── index.tsx // Corresponds to ListingsPage
│ ├── login.tsx // Corresponds to LoginPage
│ ├── register.tsx // Corresponds to RegisterPage
│ ├── profile.tsx // Corresponds to UserProfilePage
│ ├── [id].tsx // Dynamic route for individual listings
│ ├── booking.tsx // Corresponds to BookingPage
│ └── messages.tsx // Corresponds to MessagesPage
├── components
│ ├── SearchBar
│ │ ├── index.tsx
│ │ ├── LocationFilter.tsx
│ │ ├── DateFilter.tsx
│ │ └── GuestFilter.tsx
│ ├── user
│ │ ├── UserInfo.tsx
│ │ ├── UserListings.tsx
│ │ └── UserBookings.tsx
│ ├── listing
│ │ ├── ListingInfo.tsx
│ │ ├── Reviews.tsx
│ │ └── HostInfo.tsx
│ ├── listings
│ │ ├── ListingList.tsx
│ │ └── ListingItem.tsx
│ ├── forms
│ │ ├── LoginForm.tsx
│ │ ├── RegisterForm.tsx
│ │ └── BookingForm.tsx
│ ├── payment
│ │ └── PaymentInfo.tsx
│ ├── messages
│ │ ├── MessageList.tsx
│ │ └── MessageItem.tsx
│ └── common
│ └── BookButton.tsx
├── lib
│ └── api.tsx // API functions
├── styles
│ ├── globals.css // Global styles
│ └── theme.tsx // Theme-related styles
└── public
├── images // Images used in the app
└── favicon.ico // Favicon```
This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.tsx/tree/canary/packages/create-next-app).