A lightweight, self-hostable platform for managing your applications and automating repetitive development tasks.
DevMatter is designed to streamline common development workflows by providing a centralized platform for managing multiple projects. Whether you're juggling several applications or need a simple way to handle form submissions and notifications, DevMatter offers the flexibility and control you need.
- Custom Schema Definition: Create forms with your own schema structure
- Programmatic Submissions: Simple API for saving form data
- Real-time Notifications: Get notified instantly when submissions occur
- Mobile-First Experience: Clean mobile interface for viewing submissions on the go (iOS support, Android coming soon)
- Team based collaboration
- Project monitoring and analytics
- Third party integrations
- API based customer support system
Get started immediately with our hosted version at devmatter.app
docker run -d \
--name dev-matter \
-p 3000:3000 \
-e DATABASE_URL="your_database_url" \
-e SECRET="your_secret_key" \
-e RESEND_API_KEY="your_resend_api_key" \
-e GOOGLE_APPLICATION_CREDENTIALS="path/to/credentials.json" \
adityavinodh/dev-matterNote: This is only the API server. The web app has its own repository: devmatter-web
- Node.js 20+ and npm
- PostgreSQL database
- Firebase project for push notifications
- Resend API key for transactional email
-
Clone the repository
git clone https://github.com/your-username/dev-matter.git cd dev-matter -
Install dependencies
npm install
-
Set up environment variables
cp .env.example .env
-
Configure your environment
Edit
.envwith your configuration:# Required DATABASE_URL=postgresql://username:password@localhost:5432/devmatter SECRET=your-super-secret-key-here RESEND_API_KEY=your-resend-api-key GOOGLE_APPLICATION_CREDENTIALS=/path/to/firebase-admin-sdk.json -
Set up the database
npm run db:push
-
Start the development server
npm run dev
The application will be available at http://localhost:3000
| Variable | Required | Description |
|---|---|---|
DATABASE_URL |
✅ | PostgreSQL connection string |
SECRET |
✅ | Secret key for JWT tokens and encryption |
RESEND_API_KEY |
✅ | API key for email notifications via Resend |
GOOGLE_APPLICATION_CREDENTIALS |
✅ | Path to Firebase Admin SDK JSON file for push notifications |
For push notifications, you'll need to:
- Create a Firebase project
- Generate a service account key
- Download the JSON credentials file
- Set
GOOGLE_APPLICATION_CREDENTIALSto the file path
# Generate migrations
npm run db:generate
# Push schema changes to database
npm run db:push
# Run migrations
npm run db:migrate
# Open Drizzle Studio (database GUI)
npm run db:studioWe welcome contributions!
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- 📧 Contact form
- 🐛 Issues: GitHub Issues
- 💬 Discussions: GitHub Discussions
Built with ❤️ for developers who want to focus on building, not managing.