Svelte Hipster
Generate cybernetically enhanced JHipster Svelte web applications
Introduction
This is a JHipster blueprint, that intends to use Sapper / Svelte as the client side development framework.
What's new
Refer to the changelog to gain more insights into each release details.
Supported flows and integrations
Under active development
Following integrations are supported:
✅ Session, JWT authentication
✅ Dark Mode support
✅ Tailwind CSS, PurgeCSS, PostCSS integration for optimized CSS bundles
✅ Prettier, EsLint integration
✅ Cypress integration for end to end tests
✅ Jest and Testing Library integration for unit tests
✅ Rollup module bundler
Following functional flows are covered with end to end tests:
✅ Sign in
✅ Sign up
✅ Forgot Password
✅ Home
✅ Account
✅ Change Password
✅ Settings
✅ Sign out
✅ Administration
✅ User Management (List, Create, Update, View, Delete)
For more details, you can check out the source code of sample application
Technical Stack
Prerequisites
This guide assumes that you have already setup JHipster on your workstation.
Installation
To install the blueprint, run below command:
npm install -g generator-jhipster-svelte
To update the blueprint, run below command:
npm update -g generator-jhipster-svelte
Usage
To use the blueprint, run the below command:
jhipster --blueprints svelte
Docker development
Svelte Hipster docker images are available at DockerHub
To develop against the latest published release, follow below steps:
- Pull the
Svelte Hipster
docker image:
docker pull jhipster/svelte-hipster
In case, you want to try out the latest code (unpublished), then, pull the image with main
tag as:
docker pull jhipster/svelte-hipster:main
- Create a new directory for your application and run the below command to generate the application:
mkdir svelte-app && cd svelte-app
docker run -it --rm -v $PWD:/app jhipster/svelte-hipster
-
You can also run the generated application from within the container. Following examples consider maven
as the build tool:
- To run unit test cases, use the command:
docker run -it --rm -v $PWD:/app -v ~/.m2:/home/jhipster/.m2 --entrypoint ./mvnw jhipster/svelte-hipster clean test
- To start the application using the default
dev
profile, use the command:
docker run -it --rm -v $PWD:/app -v ~/.m2:/home/jhipster/.m2 -p 8080:8080 --entrypoint ./mvnw jhipster/svelte-hipster -DskipTests
Access application with http://localhost:8080/
-
If you would like to access the container file system, you can also attach a bourne shell:
docker run -it --rm -v $PWD:/app -v ~/.m2:/home/jhipster/.m2 --entrypoint sh jhipster/svelte-hipster
🛠️ Local Development
Pull requests are encouraged and always welcome.
To setup your development environment, follow below steps:
- Link svelte blueprint globally:
cd generator-jhipster-svelte
npm link
- Link a development version of JHipster to your blueprint (optional: required only if you want to use a non-released JHipster version, like the main branch or your own custom fork)
cd generator-jhipster
npm link
cd generator-jhipster-svelte
npm link generator-jhipster
- Create a new directory for your application and link
JHipster
and svelte
blueprint.
mkdir my-app && cd my-app
npm link generator-jhipster-svelte
npm link generator-jhipster (Optional: Needed only if you are using a non-released JHipster version)
jhipster --blueprints svelte
License
Apache-2.0 © Vishal Mahajan