Skip to main content

2 posts tagged with "WIP"

View All Tags

Work In Progress 3

· 2 min read
William Xiao
Developer
Justin Lieu
Developer
Matthew Kang
Developer
Jacob Zhu
Developer
Kevin Xu
Developer

All members of Trekkers are thrilled to share our third work-in-progress update for Trek.

In Progress 3, we have added Redux to Trek, by thinking of the main type of data we will be storing and about how we would like this data to be “connected” to our components.

Redux

As mentioned in the introduction, we have begun the integration of Redux into our application.

Default Data and Display on Page

Here is the default data that we used to initialize our profile settings reducer.


Profile Default Data

Profile Default Data


We hooked up the state to display on our user profile settings page


User Profile Settings Page (Displaying from Redux Store)

User Profile Settings Page


Redux Devtools Screenshot of State

Redux Devtools Screenshot


Our 3 minimum actions

Action #1: addProfileCurrentLocation

This action handles the addition of a "current location" of a user to their profile.

Code:

export const addProfileCurrentLocation = (location: string) => ({
type: ADD_PROFILE_CURRENT_LOCATION,
payload: location
})

Action #2: addProfileInterest and removeProfileInterest

These two actions handles the interests of a user, allowing them to add new interests, and remove old unwanted ones freely.

Code:

export const addProfileInterest = (interest: string[]) => ({
type: ADD_PROFILE_INTEREST,
payload: interest
})

export const removeProfileInterest = (location: string) => ({
type: REMOVE_PROFILE_INTEREST,
payload: interest
})

Action #3: addProfileSocialAccount

This action handles addition of social media account links (Facebook, Instagram, Twitter, YouTube)

Code:

export const addProfileSocialAccount = (accountType: SocialMediaAccounts, url: string) => ({
type: ADD_PROFILE_SOCIAL_ACCOUNT,
payload: { accountType, url }
});

Of course, we also have many other actions and plan to add more as complexity of the project increases!

Actions.js

Other Goals

Stay tuned for more updates as we continue to refine and enhance Trek!

Work In Progress 2

· 2 min read
William Xiao
Developer
Justin Lieu
Developer
Matthew Kang
Developer
Jacob Zhu
Developer
Kevin Xu
Developer

All members of Trekkers are thrilled to share our second work-in-progress update and introduce the first pre-release (v0.1.0) of Trek.

In Progress 2, we have finalized our app structure, including the high-level React component structure, and developed front-end interfaces for the main features of our minimal viable product (MVP).

High-Level Overview

The pages of our web application are categorized into three main groups:

  • Main Pages: Landing Page, Public Profile Page, etc.
  • Trip App Pages: Overview, Details, Analytics Pages
  • Settings Pages: User Profile/Account Settings Page

Each of these pages consists of various sub-components. For Progress 2, we have developed some of these core pages and their sub-components that define our MVP.

Tech Stack

TypeScript

We chose React with TypeScript for this phase. TypeScript offers type safety, is an industry standard, and all Trekkers members have experience working with it.

Tailwind CSS

We integrated Tailwind CSS for easier and faster development of styled components. Justin Lieu has led the team in implementing Tailwind during the development process.

Mantine UI

We also utilized Mantine, a popular React UI Component library. After comparing MUI, Chakra, and Mantine, we chose Mantine for its diverse components and ease of customization.

Key Pages and Features

Landing Page

Landing Page 1 Landing Page 2 Responsive 2 Profile Dropdown

Our landing page provides a brief description of the application, includes short card components related to travel, and features a newsletter signup.

Profile Page

Profile Page Small Trip Cards Large Trip Cards

As mentioned in Progress 1, the profile page displays all trips associated with a user, allowing them to browse through their trips conveniently.

Trip Planning Page

The Trip Planning page is one of the main features of our application, consisting of four subpages: Overview, Details, Map, and Timeline.

Map To-do List Trip Details

Settings Page

Account Settings Responsive 1 Profile Settings

The Settings page includes Account Settings and Public Profile Settings, enabling users to manage their profiles and account preferences.

Stay tuned for more updates as we continue to refine and enhance Trek!