A comprehensive college application management platform. Open source. Privacy-first. Built by students.
Velora is a structured, open-source platform designed to streamline the college application workflow. Built by a student developer who recognized the fragmentation in application management tools, Velora consolidates the entire process—from self-assessment through enrollment—into a single, cohesive interface.
The platform prioritizes user privacy through client-side storage, requires no authentication, and maintains zero external dependencies for data persistence. All state is managed through browser localStorage with a versioned persistence layer.
Frontend
- Svelte 5 with rune-based reactivity
- Tailwind CSS for styling
- Vite as build tool
- SvelteKit for routing and server-side capabilities
Desktop Application
- Tauri v2 for native application wrapper
- Cross-platform support (macOS, Windows, Linux)
- Native window management and OS integration
Storage
- Browser localStorage (client-side only)
- JSON-based export/import for data portability
- Versioned key structure for backward compatibility
Design
- Responsive design supporting desktop and tablet viewports
- Mobile support planned for future releases
- Dark-first UI paradigm
An interactive visualization of the college application process structured as a nine-phase progression tree. Users navigate through sequential milestones from self-assessment through final enrollment decisions.
Implementation: SVG-based rendering with adaptive scaling, smooth panning on narrow viewports, custom scrollbar implementation.
Structured interface for tracking and categorizing prospective schools. Integrates with university dataset to auto-populate institutional metrics.
Features:
- Reach/Target/Safety classification
- Automatic tier calculation based on student metrics (GPA, test scores)
- Manual override capability
- Cost and admission requirement tracking
- Direct linking to institution websites
Dedicated module for documenting extracurricular involvement, leadership roles, and time commitments.
Functionality:
- Structured activity logging with role and hours tracking
- Searchable portfolio
- Persistent storage with automatic sync
Focused environment for college essay composition with real-time word and character counting.
Features:
- Multi-document support
- Document management (create, rename, delete)
- Automatic persistence
- Collapsible sidebar for distraction-free writing
Visual calendar interface for managing application deadlines, test dates, and FAFSA timelines.
Implementation:
- Grid-based calendar rendering
- Event previews on hover
- Modal-based event creation
- Persistent deadline storage
User-facing controls for data export, import, and reset functionality.
Capabilities:
- JSON export for data portability
- JSON import to restore state
- Full data reset with confirmation dialog
- Version tracking for future migrations
Velora uses Svelte 5 reactive runes for state management:
$statefor reactive data$derivedfor computed values$effectfor side effects and persistence
File: src/lib/persist.ts
All data is persisted through a versioned key structure:
velora_v{VERSION}_{pillar}
Where pillar refers to each data domain: map, colleges, activities, calendar, documents.
Store Types:
- MapStore: Node status and resource completion tracking
- CollegesStore: Institution list with metrics
- ActivitiesStore: Activity entries
- CalendarStore: Event timestamps and titles
- DocumentsStore: Writing content with metadata
- Node.js 18+
- pnpm (preferred) or npm
git clone https://github.com/get-velora/velora.git
cd velora
pnpm install
pnpm devBuild the native desktop application:
cd src-tauri
cargo build --releaseOutputs native binaries for the current platform.
pnpm buildvelora/
├── src/
│ ├── app.html # Root HTML template
│ ├── app.css # Global styles
│ ├── components/
│ │ ├── BgDarkTiles.svelte
│ │ ├── DataManager.svelte
│ │ ├── DetailPanel.svelte
│ │ ├── LeftBar.svelte
│ │ ├── SkillTreeCanvas.svelte
│ │ ├── Titlebar.svelte
│ │ └── WelcomeBanner.svelte
│ ├── lib/
│ │ ├── nodesData.ts # Skill tree node definitions
│ │ ├── persist.ts # Storage layer
│ │ ├── store.svelte.ts # Reactive stores
│ │ ├── types.ts # TypeScript interfaces
│ │ └── utils.ts # Utility functions
│ └── routes/
│ ├── +layout.svelte # Root layout
│ ├── +page.svelte # Welcome page
│ ├── activities/
│ ├── calendar/
│ ├── colleges/
│ ├── documents/
│ ├── map/
│ └── settings/
├── src-tauri/ # Tauri desktop application
│ ├── src/
│ │ ├── lib.rs
│ │ └── main.rs
│ └── tauri.conf.json
├── static/ # Images and static assets
├── vite.config.js
├── svelte.config.js
├── tsconfig.json
└── package.json
interface PathfinderNode {
id: string;
title: string;
description: string;
status: "completed" | "current" | "upcoming";
level: number;
position: "center" | "left" | "right";
icon: SvelteComponent;
resources: NodeResource[];
track?: string;
}interface NodeResource {
id: string;
title: string;
description: string;
url: string;
type: "guide" | "article" | "official" | "tool" | "video" | "calculator";
completed: boolean;
}interface College {
id: number;
name: string;
status: "Reach" | "Target" | "Safety";
cost: string;
avgGpa: string;
avgTest: string;
testOptional: boolean;
url: string;
isManual?: boolean;
}Velora implements privacy by design:
- No user accounts or authentication required
- No external API calls for user data
- All data stored exclusively in browser localStorage
- No cookies or tracking mechanisms
- No third-party analytics
- Source code publicly available for auditing
Data export functionality enables users to maintain portable backups in standard JSON format.
- TypeScript for type safety
- Svelte 5 reactive runes for state management
- Tailwind CSS for styling
- Single-line comments only (no block comments)
- Meaningful commit messages
- Keep components focused and reusable
- Use props for data passing
- Leverage derived state for computed values
- Minimize side effects through effect boundaries
Test changes across multiple viewports:
- Desktop (1920x1080)
- Tablet (768x1024)
- Responsive behavior on narrow screens
Velora is architected for Tauri integration, enabling native desktop applications with:
- Operating system integration
- Offline-first functionality
- System tray support
- File system access for direct JSON import/export
- Platform-specific enhancements
- Mobile-optimized interface
- Multi-language support
- Enhanced calendar views
- Advanced filtering and search
- Timeline visualization for deadlines
- Data analytics and insights
Contributions are welcome. See CONTRIBUTING.md for guidelines.
git clone https://github.com/get-velora/velora.git
cd velora
pnpm install
pnpm devMIT License - see LICENSE for details.




