Public
Like
MaseWakwaap
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Viewing readonly version of main branch: v1View latest version
A Val Town application that alerts followers when new beats, sample packs, or songs are released.
- Release Management: Add new music releases (beats, sample packs, songs)
- Follower Notifications: Email alerts to subscribers when new content drops
- Admin Dashboard: Manage releases and view follower statistics
- Public Landing: Allow fans to subscribe for notifications
├── backend/
│ ├── database/
│ │ ├── migrations.ts # Database schema setup
│ │ └── queries.ts # Database query functions
│ ├── routes/
│ │ ├── admin.ts # Admin dashboard routes
│ │ ├── releases.ts # Release management routes
│ │ └── subscribers.ts # Subscriber management routes
│ └── index.ts # Main Hono app entry point
├── frontend/
│ ├── components/
│ │ ├── App.tsx # Main React app
│ │ ├── AdminDashboard.tsx
│ │ ├── ReleaseForm.tsx
│ │ └── SubscribeForm.tsx
│ ├── index.html # Main HTML template
│ ├── index.tsx # Frontend entry point
│ └── style.css # Custom styles
└── shared/
└── types.ts # Shared TypeScript types
-
Set environment variables:
ADMIN_PASSWORD: Password for admin accessARTIST_NAME: Your artist nameARTIST_EMAIL: Your email for notifications
-
The database will be automatically initialized on first run.
- Public: Visit
/to subscribe for notifications - Admin: Visit
/adminto manage releases and view subscribers - API: RESTful endpoints for releases and subscribers
GET /api/releases- Get all releasesPOST /api/releases- Create new release (admin)POST /api/subscribe- Subscribe for notificationsGET /api/subscribers- Get subscriber count (admin)