A public learning journal for developers — write daily, build streaks, share your progress.
📖 Example profile → devlog-rosy.vercel.app/u/akansh
Most developers learn constantly but have nothing to show for it. DevLog gives you a place to write what you learned each day, automatically tracks your streak, and generates a public profile with a GitHub-style heatmap — so your consistency becomes visible to the world.
- ✦ Daily log entries — write what you learned, tag it, track time spent
- 🔥 Streak tracking — automatic streak calculation, breaks if you miss a day
- ⚡ XP system — earn 10 XP per log, bonus every 7-day milestone
- 🔁 Streak revival — spend 50 XP to bring a broken streak back
- 🗓 GitHub-style heatmap — 365-day contribution calendar on your profile
- 🌐 Public profiles — shareable
/u/:usernamepage with full history - 🏷 Tag filtering — filter logs by topic on any public profile
- 📋 Copy profile link — one-click share from the dashboard
| Layer | Technology |
|---|---|
| Framework | React 18 |
| Build tool | Vite |
| Styling | Tailwind CSS |
| Routing | React Router v6 |
| HTTP client | Axios |
| Deployment | Vercel |
git clone https://github.com/YOURUSERNAME/devlog.git
cd devlognpm installVITE_API_URL=http://localhost:5000For production this points to your Render backend URL.
npm run devApp runs at http://localhost:5173
Note: Make sure your backend is running too. See devlog-backend.
| Variable | Description |
|---|---|
VITE_API_URL |
Backend API base URL |
- Push this repo to GitHub
- Import the repo on vercel.com
- Add environment variable:
VITE_API_URL= your Render backend URL - Deploy —
vercel.jsonhandles SPA routing automatically
src/
api/
axios.js # axios instance with JWT interceptor
components/
Navbar.jsx
LogCard.jsx
ProtectedRoute.jsx
CopyProfileLink.jsx
ErrorBanner.jsx
Skeletons.jsx
EmptyState.jsx
context/
AuthContext.jsx # auth state + login/logout
pages/
Landing.jsx
Login.jsx
Register.jsx
Dashboard.jsx
NewLog.jsx
EditLog.jsx
PublicProfile.jsx # /u/:username
App.jsx
This frontend connects to a separate Express + MongoDB backend.
Akansh — devlog-rosy.vercel.app/u/akansh