Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
e4d3e14
feat: add MUI icons dependency
joshnorlin Nov 30, 2025
0828908
feat(input): add minimally functional coordinate file upload component
joshnorlin Nov 30, 2025
9cf32a2
feat(input): improve styling and add yield file upload component
joshnorlin Dec 1, 2025
08240d0
feat(input): add optimization constraints and field data inputs, crea…
joshnorlin Dec 1, 2025
b5667fb
feat: alter app routes for manual testing
joshnorlin Dec 1, 2025
a6c2364
feat(input): fix styling issues, refactor input modal into smaller co…
joshnorlin Dec 2, 2025
3baa970
feat(output): add Leaflet and React Leaflet dependencies
joshnorlin Dec 2, 2025
41dde4a
feat(output): edit Leaflet and React Leaflet dependencies, add types
joshnorlin Dec 2, 2025
04ba2b9
feat(output): minimal React Leaflet JS map
joshnorlin Dec 4, 2025
b064fab
feat(output): create minimal manual coordinate upload entry
joshnorlin Dec 4, 2025
daea901
feat(output): add minimal prescription map viewer
joshnorlin Dec 5, 2025
0ec609d
feat(test): add routing and sample coordinate data for manual testing
joshnorlin Dec 5, 2025
a640038
feat(input): add styling to manual coordinate upload modal
joshnorlin Dec 8, 2025
ffc16df
feat: add MapLibre GL JS dependency
joshnorlin Dec 26, 2025
ae52342
feat: migrate from leafletJS to MapLibre GL JS
joshnorlin Dec 26, 2025
9c991a0
feat: create temporary state management system to integrate input and…
joshnorlin Dec 26, 2025
43e53f4
feat: add manual coordinates as global state variable
joshnorlin Dec 26, 2025
0c602d4
feat: connect manual coordinates and output validation to state manag…
joshnorlin Dec 26, 2025
721eb36
fix: adjust global state context logic
joshnorlin Dec 26, 2025
7a84932
feat: add turf dependency for easy map handling
joshnorlin Dec 26, 2025
43523e1
feat: improve map visualization
joshnorlin Dec 26, 2025
72441ad
feat: link output map to input coordinates
joshnorlin Dec 26, 2025
7a9d7d8
feat: finish working output,
joshnorlin Dec 27, 2025
2652e4f
feat: group components by feature, make styling logic more readable /…
joshnorlin Dec 27, 2025
9b9c187
feat: update styling
joshnorlin Dec 27, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions docs/01_Problem_Definition/Requirements.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Project Requirements Biochar Placement Optimization Tool
# Project Requirements - Biochar Placement Optimization Tool

## Table of Contents

- [Project Requirements Biochar Placement Optimization Tool](#project-requirements--biochar-placement-optimization-tool)
- [Project Requirements - Biochar Placement Optimization Tool](#project-requirements--biochar-placement-optimization-tool)
- [Table of Contents](#table-of-contents)
- [Functional Requirements](#functional-requirements)
- [User-Facing Input/Output](#user-facing-inputoutput)
Expand Down Expand Up @@ -65,11 +65,11 @@ The total budget of the product shall not exceed $1000.

The following schedule outline shall be followed:

- Approval of Requirements Sept. 30, 2025
- Concept Design Review Nov. 30, 2025
- EPO of long lead parts Dec. 8, 2025
- Detailed Design Review Feb. 9, 2026
- ER of drawing package Mar. 2, 2026
- Complete Prototype Build Apr. 5, 2026
- UI Design EXPO Apr. 26, 2026
- Final Report / Drawings May 4, 2026
- Approval of Requirements - Sept. 30, 2025
- Concept Design Review - Nov. 30, 2025
- EPO of long lead parts - Dec. 8, 2025
- Detailed Design Review - Feb. 9, 2026
- ER of drawing package - Mar. 2, 2026
- Complete Prototype Build - Apr. 5, 2026
- UI Design EXPO - Apr. 26, 2026
- Final Report / Drawings - May 4, 2026
2 changes: 1 addition & 1 deletion docs/03_Project_Management/Schedule/Schedule.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ The project schedule outlines the planned timeline and major milestones for Char

The schedule provides a high-level view of dependencies between tasks, showing how progress in one area (such as dataset preparation) enables the next (such as model development). By visualizing these relationships, the schedule helps identify potential bottlenecks early and ensures efficient coordination between contributors.

The Gantt chart accompanying this document serves as the main visual reference for the projects timeline. It includes major milestonessuch as Snapshot Daysto track deliverable progress and measure readiness for deployment.
The Gantt chart accompanying this document serves as the main visual reference for the project's timeline. It includes major milestones-such as Snapshot Days-to track deliverable progress and measure readiness for deployment.

In summary, the schedule acts as both a **planning tool** and a **communication aid**, helping the team maintain focus, manage dependencies, and make informed adjustments as the project evolves.

Expand Down
24 changes: 12 additions & 12 deletions frontend/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,14 +110,14 @@ The frontend integrates with Django REST Framework using **TokenAuthentication**

### Key Files

- `src/services/authService.ts` API calls and token management
- `src/contexts/AuthContext.tsx` Auth state and methods
- `src/types/auth.ts` TypeScript types for auth
- `src/components/ProtectedRoute.tsx` Guards authenticated pages
- `src/components/PublicRoute.tsx` Prevents logged-in users from seeing login/signup
- `src/pages/LoginPage.tsx` Login form
- `src/pages/SignupPage.tsx` Registration form
- `src/pages/HomePage.tsx` Protected home page (shown only to authenticated users)
- `src/services/authService.ts` - API calls and token management
- `src/contexts/AuthContext.tsx` - Auth state and methods
- `src/types/auth.ts` - TypeScript types for auth
- `src/components/ProtectedRoute.tsx` - Guards authenticated pages
- `src/components/PublicRoute.tsx` - Prevents logged-in users from seeing login/signup
- `src/pages/LoginPage.tsx` - Login form
- `src/pages/SignupPage.tsx` - Registration form
- `src/pages/HomePage.tsx` - Protected home page (shown only to authenticated users)

---

Expand Down Expand Up @@ -172,10 +172,10 @@ Commit both `package.json` and the lock file to version control.
- **Package manager**: `npm`
- **Project root**: `src/`
- **Main commands**:
- `npm run dev` start development server
- `npm run build` build for production and type check
- `npm run preview` preview production build
- `npm run lint` lint codebase
- `npm run dev` - start development server
- `npm run build` - build for production and type check
- `npm run preview` - preview production build
- `npm run lint` - lint codebase
- **Configuration**:
- TypeScript: `tsconfig.json`
- Vite: `vite.config.ts`
Expand Down
7 changes: 7 additions & 0 deletions frontend/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,13 @@
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"
integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY="
crossorigin=""/>
<!-- Make sure you put this AFTER Leaflet's CSS -->
<script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"
integrity="sha256-20nQCchB9co0qIjJZRGuk2/Z9VM+kNiyxNV1lvTlZBo="
crossorigin=""></script>
<!-- no logo for now -->
<title>CharAI</title>
</head>
Expand Down
Loading