School Project Report

This page explains Gruntech Invest as a high school project in three sections, aligned with Vincent’s teacher’s guidance: first finish the product, then describe the process, and finally reflect on the outcome.

Section A: AI and Planning Section B: Process Section C: Reflection

Overview (What the product does)

Gruntech Invest is a web app that helps users compare stocks using a transparent 0–100 fundamentals-based score. It refreshes weekly and highlights top opportunities. For top opportunities, AI is used to produce plain-English explanations and an additional AI score, then a combined score is displayed.

Goal

Help non-experts discover and understand fundamentally strong companies, using clear scoring and simple explanations.

Key idea

Numbers for consistency (score + factor breakdown), AI for readability (short, plain-English summary).

Section A: Using AI to create the project

Criterion A focuses on planning and using AI as a tool. For this project, AI was used as a coding assistant to accelerate development and to help reason about architecture, UI design, and debugging.

A1. First prompt (example)

The first prompt to Cursor would be a short specification of the product. For example:

Create a web app called Gruntech Invest. It should rank stocks with a transparent 0–100 score based on fundamentals. Provide a Top 10 list, stock detail pages, and a clear explanation of why a stock scores well or poorly. Use a weekly refresh pipeline and show data timestamps. Use AI only for writing plain-English summaries for top opportunities.

A2. How AI was used responsibly

  • AI was used to draft code and propose changes, but every change was verified by running formatting/check scripts and validating outputs.
  • The scoring rules remain transparent and deterministic; AI does not silently change the score.
  • When AI services are rate-limited, the app remains usable with the algorithmic score.
Teacher note: The priority is to finish the product first. After the product is stable, document the process (Section B) and reflect on what worked and what did not (Section C).

Section B: Process (What Vincent did to build it)

This section should be written once the product is complete. Below is a clear structure to describe the process.

B1. Planning

  • Define the audience: investors who want fundamentals, not short-term trading.
  • Define success: a simple UI that makes the scoring understandable.
  • Define constraints: weekly refresh, limited API rate limits, predictable costs.

B2. Implementation steps

  • Frontend: landing page, top lists, stock detail pages, and simple explanations.
  • Backend: ingestion from data providers, storage in DynamoDB, scoring engine, and API.
  • Pipeline: scheduled weekly run to refresh data and recompute scores.
  • Deployment: infrastructure and automated rollouts to the test environment.

B3. Testing and iteration

  • Validate that top opportunities always include AI scores (when expected).
  • Fix data issues (for example price chart split artifacts) and confirm no regressions.
  • Improve clarity: remove confusing text and add tooltips for key metrics.

Section C: Reflection (What worked, what did not)

This section should be written after completion. It focuses on evaluating the outcome and learning from the build.

C1. What worked well

  • Transparent scoring makes comparisons consistent and explainable.
  • AI summaries help non-experts understand key reasons and risks faster.
  • Weekly refresh keeps the platform focused and predictable.

C2. Challenges

  • Rate limits and AI throttling required resilient fallbacks and retries.
  • Some tickers have missing fundamentals, so confidence varies by stock.
  • Keeping UX simple while still educational required careful wording.

C3. Improvements for a future version

  • More metric explanations directly inside the stock detail view.
  • Better progress visibility for long-running ingestion and scoring pipelines.
  • More robust handling for special tickers (preferred shares, ADRs, etc.).
Reflection prompt: “If I had to rebuild this in half the time, what would I simplify? If I had double the time, what would I improve first?”