GithubHelp home page GithubHelp logo

goober's Introduction

Goober

Screenshot 2024-01-23 at 22 59 46

Goober is an ride-sharing web application, designed as a minimum viable product (MVP) that closely emulates real-world ride-sharing services. This project was built as a full-stack solution, including a front-end user interface, back-end API, real-time data handling, and a database.

Running Live

Live app deployed at Vercel

Running Locally

  cp .env.example .env
  pnpm install
  pnpm run dev

High-level Architecture

Novo mural (1)

Technologies

  • Framework: Built on the T3 Stack stack for efficient full-stack development.
  • Real-Time Data: Supabase client for real-time data management.
  • Database: Supabase using Postgresql and Prisma for database operations.
  • Geolocation Service: Google Maps API for geolocation services.
  • State Management: React Query for efficient state syncing with backend data.
  • UI Components: Tailwind CSS with some AI-generated components from Vercel v0.
  • Deployment: Vercel for hosting the application.

Learnings

  • Challenges Faced:

    • UI Handling: Managing ride status with numerous possible statuses
    • Potential Backend Over-Engineering: There was a tendency to overthink solutions, potentially leading to more complex implementations than necessary.
  • Key Learnings:

    • Google Maps API: Geolocation and routing functionalities
    • Supabase: Explored the power and versatility of Supabase, particularly its real-time capabilities, enhancing the app functionalities.
    • Tailwind CSS: Keeping clean and responsive UI
  • Points of Pride

    • Clean and minimalist UI: User-friendly interface
    • Abstraction levels: Facilitating code reusability and reducing redundancy
    • First real-time application: Successfully ventured into the realm of real-time applications
  • Areas for Improvement

    • Error Handling: Handler better possibles errors
    • Post-Ride UI Enhancement: Lack of UI post complete ride
    • State Management Complexity: Faced challenges in managing the state, especially in rider UI with Maps Location API calls, indicating a need for better state management practices.
  • Development Time

    • Execution: From initial design and technologies studies to the first live deploy, the project was completed within approximately 24 hours total

Technical Decisions

  • Database Mocking and User Switching: Implemented mock data for riders and drivers, enabling dynamic user profile switchin.
  • UI/UX Design with Vercel v0: Chose AI tool Vercel v0 for rapid UI design. This tool significantly expedited the design process, allowing to focus on functionality
  • Integration of Supabase with Prisma: Combined Supabase for real-time updates and Prisma for ORM,

goober's People

Contributors

lucas-felinto avatar

Watchers

 avatar

goober's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.