ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A high-performing, mobile-first landing page for Willow Education built with Next.js 16, TypeScript, and Tailwind CSS.
Clone the repository and navigate to the project directory
Install dependencies:
pnpm install
Set up environment variables:
cp .env.example .env
Then fill in your Supabase credentials in .env:
NEXT_PUBLIC_SUPABASE_URL=your-supabase-project-url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-supabase-anon-key
Create a Supabase table for proposal requests:
CREATE TABLE proposal_requests (
id UUID DEFAULT gen_random_uuid() PRIMARY KEY,
first_name TEXT NOT NULL,
last_name TEXT NOT NULL,
email TEXT NOT NULL,
phone TEXT NOT NULL,
job_title TEXT NOT NULL,
school_name TEXT NOT NULL,
school_size TEXT NOT NULL,
state TEXT NOT NULL,
interests TEXT,
message TEXT,
created_at TIMESTAMPTZ DEFAULT NOW()
);
Run the development server:
pnpm dev
Open http://localhost:3000 in your browser
.
├── app/
│ ├── layout.tsx # Root layout with fonts and metadata
│ ├── page.tsx # Home page
│ └── globals.css # Global styles
├── components/
│ ├── header.tsx # Navigation header
│ ├── hero.tsx # Hero section
│ ├── logo-carousel.tsx # Logo carousel
│ ├── stats-section.tsx # Statistics with count-up
│ ├── features-section.tsx # Feature blocks
│ ├── how-it-works.tsx # Process steps
│ ├── testimonials-section.tsx # Testimonials grid
│ ├── faq-section.tsx # FAQ accordion
│ ├── final-cta.tsx # Final CTA section
│ ├── footer.tsx # Footer
│ ├── proposal-form.tsx # Proposal request form
│ └── grey-placeholder.tsx # Reusable placeholder component
├── lib/
│ ├── utils.ts # Utility functions (cn)
│ ├── validations.ts # Zod schemas
│ ├── supabase.ts # Supabase client
│ └── proposal-modal-context.tsx # Modal state management
└── types/ # TypeScript type definitions
pnpm build
pnpm start
The landing page uses a greyscale color palette:
All visual assets (images, videos, logos) are currently grey placeholders ready to be replaced with actual assets.
All rights reserved - Willow Education
/one-goal-planning/faq is the Willow × OneGoal partnership FAQ. Everything
else under /one-goal-planning is forwarded to the partnership workspace app
(see next.config.ts); this one page is served from here. It is behind the
workspace passcode: the page checks the visitor's workspace sign-in with the
workspace itself, so there is nothing to configure.
middleware.ts adds a small script to full page
loads of the workspace (lib/one-goal-faq/workspace-links.ts) that puts an
FAQ card on the workspace home page and an FAQ entry in its menu. It removes
itself once the workspace ships its own link to the FAQ. Everything else under
/one-goal-planning still goes through the plain rewrite.lib/one-goal-faq/workspace-alma.ts), to every workspace page. She answers
through the workspace's own /api/ask, so she gets whatever the deployed
workspace supports, and she removes herself once the workspace renders its
own Alma. The FAQ page mounts her directly
(app/one-goal-planning/faq/AlmaAssistant.tsx).content/one-goal-faq.md. Edit it on GitHub; merging to
main publishes it. The notes at the top of the file explain the format.faq_suggestions table in Supabase and
emailed to [email protected]. Every two hours on weekdays,
.github/workflows/faq-suggestions.yml turns each new one into a pull
request against content/one-goal-faq.md: merge to accept, edit then merge
to revise, close to reject. One-time setup: run
supabase/faq_suggestions.sql in the Supabase SQL editor, then add the
SUPABASE_URL and SUPABASE_SERVICE_ROLE_KEY repository secrets. Set the
FAQ_REVIEWERS repository variable (comma-separated GitHub usernames) to
have each pull request request their review..github/workflows/update-one-goal-faq.yml.
Every Monday morning (Eastern) it reads the workspace for new meeting notes,
documents, and workstream changes, asks the model which answers they change,
and opens a pull request, "FAQ updates, week of ...", with the revised FAQ,
the update log the page shows, and a description of every change and its
source. Merging it publishes the changes. An unmerged pull request is
refreshed the next Monday rather than duplicated. A week whose records change
no answers only records that they were reviewed. It needs two repository
secrets, WORKSPACE_PASSCODE and OPENAI_API_KEY, and does nothing until
both are set; it can also be run any time from the Actions tab.