light/dark

Project Overview

I recently built a website using NextJS, TailwindCSS, Prisma, Supabase, Lucia, and the Alpha Vantage API. The goal of building this website was to create a web application that allows users to visualize the fundamentals of publicly traded stocks through interactive charts, while also providing a personalized experience through authentication.

Features

The application offers the following features:

  • Stock Lookup: Users can search for any publicly traded stock by its ticker symbol to view a variety of financial charts, including revenue, margins, earnings, cash flows, and more.
  • Chart Visualization: The application uses beautiful and interactive charts to display financial data, allowing users to easily analyze patterns.
  • Table Format: In addition to charts, users can also view financial data in a table format.
  • Screenshot Capability: Users can take screenshots of the charts for future reference or sharing.
  • Favorites List: Users can save their favorite stock tickers to a list for easy access and future analysis.
  • Authentication: Users can create an account and log in to access their personalized favorites list and other features.

Technical Details

The application was built using the following technologies:

  • Frontend: NextJS, TypeScript, TailwindCSS.
  • Backend: Prisma, Supabase, Lucia, multiple financial API's like Alpha Vantage and Twelve Data.

Key Learnings

Through this project, I applied practical skills in:

Data manipulation: I processed financial data for graphical representation, addressing missing values, formatting dates, and calculating moving averages.

  • Charting libraries: I utilized Recharts and Shadcn Charts, customizing charts to align with application requirements.
  • Authentication: I implemented secure authentication with Lucia, managing cookies and sessions.
  • API integration: I integrated third-party APIs like Alpha Vantage, handling errors and rate limiting.
  • Database management: I designed and managed a database using Prisma and Supabase, creating a schema and executing queries.

Benefits

The application provides users with a user-friendly and intuitive interface for analyzing stock fundamentals, making it easier to make informed investment decisions. The ability to save favorite stock tickers, and take screenshots of charts, and access personalized features adds to the application's convenience and functionality.