원클릭으로
spinder-transaction-processing
Handle CSV parsing, transaction validation, and data processing for the Spinder expense tracking app.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Handle CSV parsing, transaction validation, and data processing for the Spinder expense tracking app.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
Create and manage expense categorization buckets in the Spinder app, including filtering logic and data aggregation.
Create new Lit-based components for the Spinder expense tracking app, following the project's coding standards and architecture patterns.
Debug issues in the Spinder expense tracking app, including transaction processing, UI rendering, and data flow problems.
Create, dispatch, and listen to custom events in the Spinder app using the Zod-validated event system.
Create new pages and routes in the Spinder application, following the routing architecture and page component patterns.
Create new Zod-based type definitions for the Spinder expense tracking app, following the project's type organization patterns.
SOC 직업 분류 기준
| name | spinder-transaction-processing |
| description | Handle CSV parsing, transaction validation, and data processing for the Spinder expense tracking app. |
This skill helps process financial transaction data from CSV files, validate transactions, and prepare them for display and analysis in the Spinder app.
Use this skill when you need to:
Each transaction must include:
details: Transaction details/descriptionpostingDate: Date in YYYY-MM-DD formatdescription: Human-readable descriptionamount: Numeric amount (positive for income, negative for expenses)type: Transaction type (debit, credit, etc.)balance: Optional account balancecheckOrSlipNumber: Optional check numberasync function processCsvFile(file: File): Promise<Transaction[]> {
const text = await file.text();
const rows = parseCsv(text);
const transactions: Transaction[] = [];
const errors: string[] = [];
for (const row of rows) {
try {
const transaction = parseTransaction(row);
transactions.push(transaction);
} catch (error) {
errors.push(`Row ${row.index}: ${error.message}`);
}
}
if (errors.length > 0) {
// Report errors to user
showErrors(errors);
}
return transactions;
}