Pragmatic web application toolkit
Installs: 5
Dependents: 0
Suggesters: 0
Security: 0
Stars: 6
Watchers: 1
Forks: 0
Open Issues: 0
Language:Astro
Type:project
pkg:composer/jyoungblood/dw
Requires
- gumlet/php-image-resize: ^2.0
- hxgf/cookie: ^1.1
- hxgf/dbkit: ^1.2
- hxgf/http-request: ^1.2
- hxgf/slime-render: ^1.3
- hxgf/x-utilities: ^1.2
- rbdwllr/psr-jwt: ^2.0
- slim/psr7: ^1.5
- slim/slim: 4.*
- vlucas/phpdotenv: ^5.5
- zordius/lightncandy: ^1.2
README
Web application development kit
Darkwave is a "batteries-included" tool kit for building data-driven web applications with Astro.
We've curated a selection of reliable and approachable tools to create a professional-grade full-stack boilerplate with pre-wired functionality and components for common SaaS and CRUD features.
DW facilitates a hyper-productive development workflow, helping developers focus on delivering real value with ease.
Read the full documentation and user guide at darkwavejs.com
What's Included?
Core Stack
- Astro (SSR w/ Node.js adapter)
- TypeScript
- Tailwind CSS with FlyonUI
- Better-Auth for authentication
- MySQL (8.0) with Kysely query builder & cli
Additional Utilities
- Alpine.js - JavaScript framework for enhanced interactivity
- HTMX - Modern approach to dynamic content without writing JavaScript
- Cropper.js - Image cropping library
- Dropzone - Drag & drop file upload interface
- SortableJS - Drag & drop sorting library
- Validator.js - String validation
- Iconify - Icon framework with Tabler icons set
Application Boilerplate
- Global middleware
- Configuration management
- DB schema & migrations
- RBAC authentication rules
- Authentication flows (register, login, fogot pw)
- Extendable admin app with user management
Utilities
- UI & form components
- Full-stack photo upload solution!
- CRUD abstractions, CSRF validation
- Storage adapters for uploaded media
- Programmatic email
- Misc helper functions
- CLI utilities
Getting Started
Clone the repository
npx degit jyoungblood/darkwave my-project
cd my-project
Install dependencies
npm install
Initialize your database and SMTP account, have the credentials ready to add to your new .env file.
Configure environment variables (add your database, mail server, etc)
mv .env.example .env
Generate Better-Auth secret (save this to your .env file)
openssl rand -base64 32
Initialize the database (and optionally create admin user)
npm run init
Start development server
npm run dev
Refer to the documentation for next steps.
License
This project is licensed under the MIT License - see the LICENSE file for details.
* . · : · . ☽ ✧
- DW Classic - legacy PHP-based version