Skip to content

ErinXU2004/CalCore-Tech

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

33 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

CalCore: AI-Powered Custom Instruction Set for Fat Loss

Welcome to CalCore, an experimental platform that reimagines how we interact with fat-loss tracking systems by combining custom ISA (Instruction Set Architecture) design with AI-driven input interpretation.

This is not just a calculatorโ€”it's the foundation of an intelligent, extensible, user-friendly metabolic tracking engine designed for daily use.


๐Ÿ’ก Project Vision

Most fat-loss apps require painful manual logging of food and exercise. CalCore's vision is to eliminate manual input entirely by enabling users to simply say:

โ€œI weigh 51kg today. I had 3 buns for breakfast, a bowl of noodles for dinner, and danced for 3 hours.โ€

  1. ๐Ÿ” Automatically interpret the input using an AI language model
  2. โš™๏ธ Translate it into CalCore DSL commands
  3. ๐Ÿงฎ Execute the commands via interpreter
  4. ๐Ÿ“Š Generate a personalized metabolic report, including:
    • Daily calorie intake
    • Calorie consumption from activities
    • Net deficit or surplus
    • Visual summary (charts, logs, trends)

Eventually, every user will have access to:

  • ๐Ÿ“† A per-day auto-generated metabolic summary
  • ๐Ÿ“ˆ Long-term weight tracking and curve plotting
  • ๐Ÿง  AI-driven natural language interaction โ€” no manual tracking needed

๐Ÿ”ง Features (In Progress)

  • DSL-based calorie and movement command parser
  • Support for per-user profile (height, weight, age, body fat %)
  • BMR/RMR calculation using Harris-Benedict equation
  • Calorie tracking (intake + consumption)
  • Weight history logging with duplicate filtering
  • Weight trend visualization with matplotlib
  • Natural language to DSL parser using LLM
  • Auto-generated daily metabolic report
  • Web or mobile front-end

๐Ÿš€ Sample Usage

Example CalCore DSL (.cal) input file:

LOG_WEIGHT 2025-06-25 51.7
EAT 300 carb
EAT 500 protein
MOVE DANCE 120
QUERY BMR
QUERY DEFICIT

Run the interpreter:

python interpreter/interpreter.py examples/sample_day.cal

๐Ÿ“ˆ Plotting Weight Trends Generate weight curve graph from JSON log:

python plot/plot_weight.py

Saves to output/weight_curve.png

๐Ÿง  Future: Natural Language Interface The next step is to allow:

โ€œI weigh 52kg today. Ate a chicken salad. Biked 1 hour.โ€ to be automatically transformed into:

LOG_WEIGHT 2025-06-25 52.0
EAT 350 protein
MOVE BIKE 60

This will be achieved through LLM-powered input parsing and DSL code generation.

๐Ÿ‘ฉโ€๐Ÿ’ป Author Erin Xu University of Michigan โ€“ ECE Major ๐Ÿ”— GitHub: ErinXU2004

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages