519fbe3dd0be7baf94e4122a39f0394a2f4da1ba
NostrCount
A decentralized life milestone tracker built on the Nostr protocol. Track your progress, celebrate achievements, and share your journey with the world.
Features
- Censorship Resistant: Built on Nostr for decentralized data storage
- Lightning Zaps: Support creators with Bitcoin Lightning Network payments
- Private or Public: Choose to keep counters private or share them publicly
- Two Counter Types: Track "days since" achievements or "days until" events
- Real-time Updates: Automatic syncing across devices through Nostr relays
- Modern UI: Beautiful, responsive design with Tailwind CSS
Getting Started
Prerequisites
- Node.js (v18 or higher)
- npm or yarn
- A Nostr extension (like Alby, nos2x, or Flamingo) for signing events
Architecture
Tech Stack
- Frontend: React 18 + TypeScript + Vite
- Styling: Tailwind CSS
- Nostr Integration: NDK (Nostr Development Kit)
- Date Handling: Day.js
- Routing: React Router
- Icons: Lucide React
Nostr Implementation
- Event Kind: 30078 (Parameterized Replaceable Events)
- Event Tags:
d: Unique identifier/slugtype: "since" or "until"title: Human-readable counter namedate: ISO date stringvisibility: "public" or "private"
Data Storage
All counter data is stored on Nostr relays as events. No centralized database is required, making the app fully decentralized and censorship-resistant.
Development
Available Scripts
npm run dev: Start development servernpm run build: Build for productionnpm run preview: Preview production buildnpm run lint: Run ESLint
Contributing
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
- Issues: Report bugs or request features on GitHub
- Discussions: Join the community discussion
Description
Languages
TypeScript
97.1%
CSS
1.3%
JavaScript
0.7%
HTML
0.5%
Dockerfile
0.4%