Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
13 changes: 12 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
node_modules/
.pnp
.pnp.js
package-lock.json
yarn.lock

# Build outputs
dist/
Expand All @@ -14,13 +16,18 @@ build/
.env
.env.local
.env.*.local
.env.development
.env.production
.env.staging

# IDE
# IDE & Cache
.vscode/
.idea/
*.swp
*.swo
*~
.eslintcache
*.tsbuildinfo

# OS
.DS_Store
Expand Down Expand Up @@ -48,3 +55,7 @@ yarn-debug.log*
pnpm-debug.log*
.cache/
tmp/
.vercel/
.netlify/
.wrangler/
vite.config.*.timestamp-*
13 changes: 13 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,19 @@ devcard/
| Web Backup | SvelteKit |
| Auth | OAuth 2.0 (GitHub, Google) |

### Web Application (`apps/web`)

The web app is a client-side SvelteKit application built with Svelte 5 and Vite. It runs independently of any backend or database using `localStorage` for all persistent storage.

- **Developer Card Form**: Create or update your profile card containing fields for Username, Full Name, Bio, and multiple platform links (GitHub, LinkedIn, Twitter/X, Instagram, YouTube, Dev.to, LeetCode, Portfolio).
- **Interactive Avatar Studio**:
- **Dynamic Initials SVG**: Instantly generates a colorful gradient SVG avatar using the initials from the entered Full Name.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This feature don't need anything in Readme. as Readme is for whole project not functionality flow documentation. Thanks!

- **DiceBear Suggestions**: Real-time suggested avatars generated using DiceBear APIs (*Avataaars*, *Robots*, *Pixel Art*, *Chibi*, *Identicon*) dynamically seeded by the username and display name.
- **GitHub Sync**: One-click sync to fetch the user's GitHub avatar once they add their GitHub link.
- **Presets**: High-quality developer photography presets from Unsplash.
- **Card Sharing & QR Codes**: Generates a shareable card at `/u/[username]`. The page renders the profile details, connection tiles, and a QR code of its own URL. Includes options to download the QR code as a PNG, copy the profile link, and edit the card.
- **Preloaded Demo**: Automatically pre-seeds a demo developer profile at `/u/devcard-demo` for instant testing.

### Hybrid Follow Engine

DevCard uses a three-layer follow engine:
Expand Down
4 changes: 3 additions & 1 deletion apps/web/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,14 @@
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch"
},
"dependencies": {
"@devcard/shared": "workspace:*"
"@devcard/shared": "workspace:*",
"qrcode": "^1.5.4"
},
"devDependencies": {
"@sveltejs/adapter-auto": "^7.0.0",
"@sveltejs/kit": "^2.50.2",
"@sveltejs/vite-plugin-svelte": "^6.2.4",
"@types/qrcode": "^1.5.6",
"svelte": "^5.51.0",
"svelte-check": "^4.4.2",
"typescript": "^5.9.3",
Expand Down
Loading